git이 관리하는 3가지 공간, git에 관리되는 파일의 4가지 상태

김동규·2023년 4월 24일
0

Git

목록 보기
6/15

참고

Pro Git을 읽다보면 index와 stage라는 용어를 자주 만나게 됩니다. 두 개념을 자주 혼동했던 기억이 있어 따로 정리하게 되었습니다.
본문 내용은 일부를 발췌하여 정리한 내용입니다. 보다 자세히 알고 싶다면 아래 항목을 참고해주세요.

Git이 관리하는 3가지 공간

Git이 관리하는 공간은 3개 입니다.

  • Working Directory는 우리가 에디터에서 보고 있는, 실제 작업이 이루어지는 공간입니다.
    • 파일의 편집과 저장으로 변경되는 내용은 이 영역을 벗어나지 않습니다.
  • Index는 git add시 파일의 스냅샷이 기록되는 영역입니다.
  • HEAD는 최신 commit을 가리키는 포인터이므로 그냥 commit이라고 생각해도 무방할 것 같습니다.
    • git commit명령어가 실행되면 Index영역에 있던 스냅샷을 가져와 commit 반영합니다.

Git에 관리되는 파일의 4가지 상태

  • Untracked : 아직 git에 의해 추적/관리되고 있지 않은 파일입니다. 새로 생성하거나 이동, git rm --cached명령으로 발생할 수 있습니다.
  • Unmodified : 지난 커밋 이후로 변경점이 없는 파일입니다.
  • modified : 지난 커밋 이후 수정하고 저장한 파일입니다. Vscode같은 경우 잘 보시면 파일 옆에 M자 표시가 나타나 있을 겁니다.
  • staged: 지난 커밋 이후 수정, 저장하고 index에 등록된 파일입니다.

index는 깃이 관리하는 공간, staged는 파일의 상태

즉, 어떤 파일에 git add명령을 내리면 그 파일은 index에 등록된 것이고 동시에 staged된 것이라 생각할 수 있습니다.

profile
공식문서를 사랑하는 프론트엔드 주니어 개발자

0개의 댓글

관련 채용 정보