작업중인 디렉터리와 인덱스 영역, 그리고 작업중인 디렉터리와 저장소간의 파일에 변동사항이
있을 때, 차이점이 생긴 내용을 확인하는 명령어 입니다.
다음과 같은 상황에서 사용
1. commit
과 branch
사이에 생긴 변동사항을 확인할 때
2. Working Directory
와 Staging Area
간의 차이점 비교
3. Staging Area
와 Repository
간의 차이점 비교
4. 모든 명령어는 untrack files 파일 목록에 있는 파일들은 관리하지 않습니다
Working Directory
에서 파일이 수정되엇을 때 인덱스 영역에서 상태를 보여줌Working Directory
<--> Staging Area
사이의 차이점 비교git diff
# ❗ git add 명령어로 스테이징 영역에 상주한 파일은 보이지 않습니다
commit
으로 저장되기 전의 Index 상태를 보여주는 명령어, 파일의 수정 상태를 확인 가능Staging Area
<--> Repository HEAD Commit
간의 차이점 비교 git add
명령어로 스테이지 영역에 올라온 파일을 확인할 수 있다.git diff --staged
# ❗ 스테이지 영역에 올라오지 않은 파일은 확인할 수 없습니다.
# 워킹 디렉터리에서 내용은 수정했는데 git add 하지 않은 경우
Working Directory
+ Staging Area
에서 생긴 모든 변동사항을 Repository
와 비교함Working Directory
+ Staging Area
<--> Repository HEAD Commit
간의 차이점 비교git add
명령어로 스테이지 영역에 올라온 파일도 확인할 수 있다.git diff HEAD
# ❗ 워킹 디렉터리 + 스테이징 영역에 모든 변동사항을 저장소에 있는 커밋과 비교한다.
# 스테이징에 올라오지 않은 파일, 올라온 파일 모두 확인할 수 있음
git diff 2929db 0f1515
출처 : kotlinworld