1장: Git 기초 - 버전 관리의 시작¶
Git이 뭔가요?¶
코딩하다가 "아, 이전 코드로 돌아가고 싶다"고 생각해 본 적 있죠? Git은 바로 그걸 해주는 도구입니다.
게임의 세이브 포인트라고 생각하면 됩니다. 중요한 순간마다 세이브를 하고, 망치면 이전 세이브로 돌아갈 수 있죠.
Git 설치하기¶
Windows¶
- git-scm.com에서 설치 파일 다운로드
- 설치 마법사 따라서 Next 계속 누르기 (기본 설정 그대로 OK)
- 설치 완료 후 Git Bash 실행
macOS¶
# Homebrew가 있다면
brew install git
# 없다면 터미널에서 git 입력하면 자동으로 설치 프롬프트가 뜹니다
Linux (Ubuntu/Debian)¶
sudo apt update
sudo apt install git
설치 확인¶
git --version
# git version 2.x.x 처럼 나오면 성공!
처음 해야 할 설정¶
Git을 설치하고 가장 먼저 해야 하는 일 — 내 이름과 이메일 등록입니다. 이 정보는 누가 코드를 작성했는지 기록하는 데 사용됩니다.
git config --global user.name "홍길동"
git config --global user.email "hong@example.com"
팁: 이메일은 나중에 GitHub 계정에 쓸 이메일과 같은 걸로 설정하는 게 좋아요.
기본 브랜치 이름 변경 (권장)¶
git config --global init.defaultBranch main
설정 확인¶
git config --global --list
Git의 핵심 개념 3가지¶
꼭 기억해야 할 세 가지 영역이 있습니다:
작업 디렉토리(Working Directory)
↓ git add
스테이징 영역(Staging Area)
↓ git commit
저장소(Repository)
| 영역 | 설명 | 비유 |
|---|---|---|
| 작업 디렉토리 | 내가 실제로 파일을 수정하는 곳 | 시험지에 답안 적는 중 |
| 스테이징 영역 | 커밋할 파일들을 골라놓는 곳 | 제출할 답안만 체크하는 단계 |
| 저장소(Repository) | 버전 히스토리가 저장되는 곳 | 선생님한테 제출된 답안지 보관함 |
실습: 첫 번째 저장소 만들기¶
1. 저장소 초기화¶
# 프로젝트 폴더 만들기
mkdir my-first-project
cd my-first-project
# Git 저장소 초기화
git init
# Initialized empty Git repository in /.../my-first-project/.git/
주의:
.git폴더가 숨겨진 채로 생성됩니다. 이 폴더가 모든 버전 정보를 갖고 있습니다. 절대 지우면 안 돼요!
2. 파일 만들고 추적하기¶
# 파일 생성
echo "# 나의 첫 프로젝트" > README.md
# 현재 상태 확인
git status
git status 출력을 보면:
Untracked files:
README.md
"추적되지 않는 파일"이라고 나오죠? Git이 이 파일을 알긴 하는데, 아직 버전 관리 대상으로 등록은 안 했다는 뜻입니다.
3. 스테이징하기¶
# 특정 파일 스테이징
git add README.md
# 또는 모든 파일 한 번에
git add .
다시 git status를 확인하면:
Changes to be committed:
new file: README.md
4. 커밋하기 (세이브!)¶
git commit -m "첫 번째 커밋: README 추가"
커밋 메시지 규칙: - 무엇을 했는지 간단히 적기 - 영문 소문자로 시작, 동사로 시작하면 좋음 - 예:
"add login page","fix header bug","update README"
5. 히스토리 확인¶
git log
# 또는 더 간결하게
git log --oneline
자주 쓰는 명령어 요약¶
| 명령어 | 역할 | 자주 쓰는 정도 |
|---|---|---|
git init |
저장소 초기화 | 프로젝트 시작할 때 한 번 |
git status |
현재 상태 확인 | 매우 자주 (습관처럼 쓰세요) |
git add <파일> |
스테이징 | 매우 자주 |
git add . |
변경 파일 전체 스테이징 | 매우 자주 |
git commit -m "메시지" |
커밋 | 매우 자주 |
git log |
커밋 히스토리 보기 | 자주 |
git log --oneline |
한 줄로 히스토리 보기 | 자주 |
git diff |
변경 내용 확인 | 가끔 |
실습 미션¶
practice폴더를 만들고 Git 저장소로 초기화하세요hello.py파일을 만들고print("Hello, Git!")를 작성하세요- 파일을 스테이징하고 커밋하세요
hello.py를 수정해서print("Hello, World!")로 바꾸세요- 다시 스테이징하고 커밋하세요
git log --oneline으로 두 개의 커밋이 보이는지 확인하세요
다음 장: 02-git-undo.md - 실수했을 때 되돌리는 방법