본문 바로가기
개발 도구/Git

Git의 세가지 작업영역(Working Directory, Staging Area, Repository)

by ♥︎해이나♥︎ 2022. 9. 5.
반응형

Git의 작업영역을 자세히 살펴보면 크게 3가지로 구분된다. 앞으로 Git을 이용해서 버전 관리를 하려면 이 개념을 반드시 이해하고 있어야 한다.

 

 

Working Directory

Git으로 관리하도록 지정된 디렉토리이다. 우리가 실제로 작업을 하는 공간이며 .git을 제외한 모든 영역이라고 보면 된다. 이 곳에서 작업한 파일들을 git add 명령어를 통해 Staging Area에 추가할 수 있다. 이 영역을 다른 말로 Working Tree 라고 부르기도 한다.

 

Staging Area

Working Directory에서 git add로 추가된 파일들이 존재하는 영역이다. Commit을 하게 되면 Staging Area에 추가된 파일들만 Repository에 반영된다.

Working Directory에 있는 파일을 바로 Repository로 옮기지 않고 중간에 Staging Area를 두는 이유는 작업한 파일중에 일부만 스냅샷으로 저장하고 싶은 상황이 발생하기 때문이다. A, B, C 파일을 작업했지만 A를 제외한 B, C만 최신 버전으로 저장해두고 싶다면 git add를 통해 B, C 파일만 이 영역으로 옮기고 Commit 하면 된다. 기술용어로 Index 라고 부르기도 한다.

 

Repository

변경 이력들이 Commit을 통해 최종적으로 저장되는 영역으로 .git 디렉토리(Git Directory)를 가리킨다. 이 곳에는 프로젝트의 버전관리를 위한 모든 정보가 기록되어 있다. 

 

반응형

댓글