
Git은 내 컴퓨터에서 파일의 변경 기록을 관리하는 프로그램이라고 말씀드린 적이 있습니다. 이번 글에서는 Git이 실제로 어떻게 일하는지, 초보자가 꼭 알아야 할 개념 위주로 설명해 보겠습니다.
1. Git이 하는 일은 사진 찍기와 비슷합니다
Git은 프로젝트 폴더의 현재 모습을 사진처럼 찍어 보관합니다. 이 사진 한 장을 커밋(commit)이라고 부릅니다. 사진을 여러 장 찍어 두면 시간 순서대로 앨범이 만들어지고, 원하는 사진 속 모습으로 언제든 돌아갈 수 있습니다.
2. Git의 세 가지 공간
Git에는 파일이 머무는 공간이 세 곳 있습니다. 이 구조만 이해하면 나머지는 쉽습니다.
첫째, 작업 폴더. 내가 평소처럼 파일을 만들고 고치는 작업실입니다.
둘째, 준비 공간. 작업실에서 만들고 고친 파일들이 도대체 뭐가 바뀐 것인지 알 수 있도록 파일에 메모를 남기고 임시 정열해 두는 곳입니다. 스테이징이라고 부릅니다.
셋째, 저장소. 스테이징에 선별 임시 비치된 파일 들을 영구히 저장하기 위하여 보관되는 곳입니다.
단체 사진에 비유해 보겠습니다. 작업 폴더는 사람들이 자유롭게 돌아다니는 마당이고, 준비 공간은 사진에 찍힐 사람들이 줄을 서는 자리이며, 저장소는 찍힌 사진이 보관되는 앨범입니다.
이 구조 덕분에 고친 파일 중에서 일부만 골라 기록할 수 있습니다.
3. 저장하는 과정 두 단계
파일을 고친 뒤 기록을 남기려면 두 단계를 거칩니다.
첫 번째, 이번에 기록할 특정 파일을 준비 공간에 올립니다.
git add 파일이름
특정 파일이 아닌 폴더 안의 바뀐 파일 전체를 올리려면 파일이름 대신 점 하나를 씁니다.
git add .
두 번째, 바뀐 내용을 메모를 붙여서 사진을 찍듯 기록합니다.
git commit -m "대본 2구간 수정"
따옴표 안의 글은 나중에 알아보기 쉽도록 적는 메모입니다. 무엇을 바꿨는지 짧게 적어 두면 됩니다.
4. 기록 확인하기
지금 상태가 어떤지 보려면 다음 명령을 씁니다.
git status
어떤 파일이 바뀌었는지, 어떤 파일이 준비 공간에 올라가 있는지 알려 줍니다. 파일이 어떤 상태인지 헷갈릴 때마다 이 명령을 먼저 입력하면 됩니다.
지금까지 만든 저장 지점 목록은 이렇게 봅니다.
git log
누가, 언제, 어떤 메모로 저장했는지 순서대로 나옵니다.
5. 되돌리기
Git을 쓰는 가장 큰 이유가 되돌리기입니다. 상황에 따라 방법이 다릅니다.
저장하기 전에 고친 내용을 버리고 마지막 저장 지점 상태로 돌리고 싶을 때는 다음처럼 합니다.
git restore 파일이름
이 명령은 아직 저장하지 않은 수정 내용은 지워지기 때문에, 지워진 내용은 복구할 수 없습니다. 실행 전에 한 번 더 확인하는 습관이 필요합니다.
이미 저장한 기록을 취소하고 싶을 때는 다음처럼 합니다.
git revert 커밋번호
커밋번호는 git log에서 확인할 수 있습니다. 이 명령은 기록을 지우지 않고, 그 변경을 취소하는 새 기록을 하나 더 남깁니다. 그래서 안전합니다.
6. 브랜치
브랜치는 본 줄기는 그대로 두고 따로 갈라져 나와 실험하는 곁가지입니다. 새로운 기능을 시험해 보다가 마음에 들면 본 줄기에 합치고, 마음에 안 들면 곁가지만 버리면 됩니다. 본 줄기는 전혀 다치지 않습니다.
git branch 실험
git switch 실험
첫 줄은 곁가지를 만드는 명령이고, 둘째 줄은 그 곁가지로 이동하는 명령입니다. 처음에는 이런 기능이 있다는 정도만 알아 두셔도 충분합니다.
7. 처음 한 번만 하는 준비
새 프로젝트 폴더를 Git이 관리하게 하려면 폴더 안에서 한 번만 입력합니다.
git init
이 명령 하나로 그 폴더가 Git 저장소가 됩니다. 이후부터는 add와 commit을 반복하면 됩니다.
8. 정리
Git이 하는 일은 결국 이 흐름입니다. 컴퓨터에서 파일을 만들거나 변경하는 작업을 한다, 기록할 파일을 고른다(add), 메모와 함께 저장한다(commit). 이 세 동작이 전부이고, 나머지 기능은 모두 여기에 덧붙은 것입니다.
기억할 명령어 네 개: git init, git add, git commit, git status
관련 참조 글
👉 Git과 GitHub
'바이브 코딩' 카테고리의 다른 글
| 무료 요리 앱 이지쉐프, 레시피 111개를 휴대폰에서 바로 열어 보세요 (0) | 2026.10.21 |
|---|---|
| GitHub이란 도대체 뭐하는 걸까? (0) | 2026.10.16 |
| Git과 GitHub, 이름은 비슷한데 뭐가 다를까? (0) | 2026.10.16 |