Diff

Violet_Evgadn·2023년 9월 25일
0

Git

목록 보기
31/33

Git Diff

Git Diff 사용법

git diff <저장소 A> <저장소 B>

git diff 명령어는 A 저장소를 기반으로 B 저장소와 어떤 차이가 있는지 보여준다.
일반적으로 A는 작업 이전, B는 작업 이후 저장소로 많이 입력한다.

git diff 같은 경우 옵션을 사용하지 않을 경우 스테이지에 올라가지 않은 파일들(Untracked 파일들)을 볼 수 없다.
즉, git diff란 일반적으로 Staging에 올라와 있는 파일과 Working Directory에 존재하는 파일들 사이의 차이점을 보여준다는 것을 알 수 있다.

Option & 사용법

  • git diff --cached : HEAD와 스테이지와의 차이점 출력

    • 장소 A : HEAD / 저장소 B : 스테이지
    • 결과물 = 앞으로 생성할 커밋과 현재 커밋의 차이점
  • git diff origin/main main : 원격 브랜치와 현재 브랜치의 내용을 비교

    • Push 할 경우 어떤 내용이 반영되는지 알고 싶을 때 사용
  • Git diff branchA branchB : 두 브랜치의 차이를 비교하기 위해 사용

    • PR이나 병합 이전 충돌을 파악할 때 유용하게 활용 가능
  • git diff --check : 공백 문자를 체크하는데 유용하게 사용

    위 이미지를 보면 git diff origin/main main 명령어를 입력했을 때 총 2가지 변경사항이 있음을 알 수 있다.
    문제는 변경 사항 중 하나는 "Pull Request 창" 문구 옆에 그저 공백(whiltespace)만 있는 것으로 (일부러 공백을 만든 것이 아닌 이상) 필수적이지 않은 쓰레기 값이다.
    이런 값을 원격 저장소에 Push 하기 전에 미리 확인하여 처리해두면 좋을 것이다.
    그리고 --check 옵션을 활용할 경우 보다시피 공백의 차이만 존재하는 변경 사항을 볼 수 있으며 해당 변경사항들을 찾아 수정해 준다면 조금 더 깔끔한 Commit을 생성할 수 있을 것이다.

profile
혹시 틀린 내용이 있다면 언제든 말씀해주세요!

0개의 댓글