본문 바로가기

QA 업무

[CI/CD] [git&github] 7.1 버전 비교하기

git diff : 최근 커밋과 작업 디렉터리 비교하기
git diff --staged : 최근 커밋과 스테이지 비교하기
git diff <커밋><커밋> : 커밋끼리 비교하기
git diff <브랜치><브랜치> : 브랜치끼리 비교하기
git reset <되돌아갈 커밋> : <되돌아갈 커밋>으로 되돌아가기
git revert <취소할 커밋> : <취소할 커밋>이 취소된 새로운 커밋 만들기
git stash : 변경 사항 임시 저장하기
git stash list : 임시 저장한 내역 조회하기
git stash apply <스태시> : 임시 저장한 작업 적용하기
git stash drop <스태시> : 임시 저장한 작업 삭제하기
git branch <브랜치> : 브랜치 나누기
git checkout <브랜치> : 체크아웃하기
git merge <브랜치> : 브랜치 병합하기
git rebase <브랜치> : 브랜치 재배치하기

 

7.1 버전 비교하기

a.txt 파일에 D 입력 후 git diff 입력 시, +D 문구 확인됨

 

7.1.2 git diff --staged : 최신 커밋과 스테이지 비교하기

 

스테이지에 추가된 항목과 최근 커밋의 차이를 보여주는 명령은 git diff --cached  또는 git diff --staged 임

 

--staged 명령 입력 시 스테이지에 추가된 항목과 최근 커밋의 차이가 출력됨

 

7.1.3 git diff <커밋><커밋> : 커밋끼리 비교하기

<커밋> 에는 짧은 커밋 해시를 이용해도 무방함

 

git diff <이 커밋을 기준으로><이 커밋이 달라진 점>

무엇을 기준으로 비교하느냐에 따라 비교의 결과는 다름

 

 

*커밋끼리 비교할 때, 좋은 팁

커밋 해시를 조회하고 붙여넣는 것이 번거롭다면 HEAD 를 기준으로 비교해도 됨

HEAD는 현재 브랜치의 최신 커밋

 

HEAD^ 또는 HEAD~1은 현재 브랜치의 최신 커밋에서 하나 이전 커밋을 가리킴

HEAD^^ 또는 HEAD~2는 최신 커밋에서 두 개 이전 커밋을 가리킴

 

HEAD : fourth commit

HEAD^ or HEAD~1 : third commit

HEAD^^ or HEAD~2 : second commit

HEAD^^^or HEAD~3 : first commit

 

7.1.4 git diff <브랜치><브랜치> : 브랜치끼리 비교하기

master 브랜치를 기준으로 foo 브랜치가 달라진 점을 확인하려면 git diff master foo 

라고 입력하면 됨

 

결론 : git diff <기준이 되는 브랜치> <기준과 비교할 브랜치>