git diff <저장소 A> <저장소 B>
git diff
명령어는 A 저장소를 기반으로 B 저장소와 어떤 차이가 있는지 보여준다.
일반적으로 A는 작업 이전, B는 작업 이후 저장소로 많이 입력한다.
git diff
같은 경우 옵션을 사용하지 않을 경우 스테이지에 올라가지 않은 파일들(Untracked 파일들)을 볼 수 없다.
즉, git diff
란 일반적으로 Staging에 올라와 있는 파일과 Working Directory에 존재하는 파일들 사이의 차이점을 보여준다는 것을 알 수 있다.
git diff --cached
: HEAD와 스테이지와의 차이점 출력
git diff origin/main main
: 원격 브랜치와 현재 브랜치의 내용을 비교
Git diff branchA branchB
: 두 브랜치의 차이를 비교하기 위해 사용
git diff --check
: 공백 문자를 체크하는데 유용하게 사용
위 이미지를 보면
git diff origin/main main
명령어를 입력했을 때 총 2가지 변경사항이 있음을 알 수 있다.
문제는 변경 사항 중 하나는 "Pull Request 창" 문구 옆에 그저 공백(whiltespace)만 있는 것으로 (일부러 공백을 만든 것이 아닌 이상) 필수적이지 않은 쓰레기 값이다.
이런 값을 원격 저장소에 Push 하기 전에 미리 확인하여 처리해두면 좋을 것이다.
그리고--check
옵션을 활용할 경우 보다시피 공백의 차이만 존재하는 변경 사항을 볼 수 있으며 해당 변경사항들을 찾아 수정해 준다면 조금 더 깔끔한 Commit을 생성할 수 있을 것이다.