
1. untracked
- git이 관리하기 이전의 상태
- 파일을 새로 생성하고 그 파일을 한번도 git add 하지 않았을때의 상태
2. unmodified
- 현재 파일의 내용이 최신 커밋의 모습과 비교했을 때 전혀 바뀌지 않은 상태
- git에게서 commit을 하여 내려 받은 후 수정을 하지 않은 상태
3. modified
- 최신 커밋의 모습과 비교해서 조금이라도 변동이 있는 파일.
4. staged
- git에게 변화된 내용을 등록한 상태
- Add the file : Untracked 상태의 파일을 처음 git add 해주면 Staged 상태가 된다.
- Edit the file : 최신 커밋과 비교했을 때 차이가 없는 Unmodified 상태의 파일의 내용을 수정하면 Modified 상태가 된다. (working directory에서)
- Stage the file : Modified 상태의 파일을 git add 해주면 Staged 상태가 된다.
- Commit : 커밋을 하면 staging area에 있던 파일들이 커밋에 반영되고, 이제 모든 파일들은 최신 커밋과 차이가 없게 된다. Unmodified 상태가 된다.
- Remove the file : 파일 삭제 => 당연히 Git에서 더이상 인식하지 않음