SCM/Git
02. Git 파일의 상태와 기본 Flow
삽질의 달인
2020. 1. 23. 13:58
Git 레포지토리에서 파일의 라이프사이클
워킹 디렉토리의 파일은 관리대상인 Tracked(추적하는..) 와 관리대상이 아닌 Untracted 로 나뉜다.
처음에 .git 에 Add 를 하면 Staging area 에 올라가고 .git 데이터 베이스에 파일이 등록 된다.
이 상태에서 Commit 하면 관리대상인 Tracked 가 되는 것이다.
Tracked 상태인 파일은 한번이라도 스냅샷을 뜬 ( Repository 에 Commit 한 ) 파일을 말한다.
기본 동작 흐름
파일의 상태를 바탕으로 간단히 생각해 보면 다음과 같다.
기본적으로 파일을 add 하여 파일을 Staging Area 에 올리면 ( .git 의 DB 에 등록 )
이땐 아직 Modified/Unmodified 를 따지지 않는다.
이후 Commit 하면 Revision 을 하나 만들어 로컬 저장소에 해당 스냅샷이 저장되고
파일은 Tracked / Unmodified 가 된다.
전체적인 Download/Upload Operation Cycle 은 아래와 같다.