포스트

분석하고 디버깅하기

분석하고 디버깅하기

git log

갓 커밋마다 변경 사항 함께 보기

1
git log -p

최근 n개만 보기

1
git log -n

통계와 함께 보기

1
git log --stat

한 줄로 보기

1
git log --oneline

변경 사항 내 단어 검색

1
git log -S (검색어)

커밋 메시지로 검색

1
git log --grep (검색어)

로그 포맷팅 (얄코 포맷)

git log --graph --all --pretty=format:'%C(yellow) %h  %C(reset)%C(blue)%ad%C(reset) : %C(white)%s %C(bold green)-- %an%C(reset) %C(bold red)%d%C(reset)' --date=short
  • aliaslg 처럼 등록하여 사용

git diff

워킹디렉토리 변경사항 확인

1
git diff

파일명만 확인

1
git diff --name-only

스테이지 확인

1
git diff --staged

커밋간의 차이 확인

1
git diff (커밋1) (커밋2)

브랜치간의 차이 확인

1
git diff `브랜치1` `브랜치2`

누가 코딩했는지 알아내기

파일의 부분별로 작성자 확인

1
git blame (파일명)

특정 부분 지정해서 작성자 확인

1
git blame -L (시작줄) (끝줄, 또는 +줄수) (파일명)

오류가 발생한 시점 찾아내기

  • 이진 탐색 시작
1
git bisect start
  • 오류 발생 시점임을 표시
1
git bisect bad
  • 의심 지점으로 이동
1
git checkout (커밋 해시) 
  • 오류 발생 않을 시 양호함 표시
  • 원인 찾을 때까지 good/bad 반복
1
git bisect good 
  • 이진 탐색 종료
1
git bisect reset 

참고

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.