Git Bisect 튜토리얼

명령어 설명

git 리포지토리에서 발생한 문제점을 빠르게 찾기 위한 명령어

이진 탐색을 통해, 문제의 커밋을 탐색하기에 효율적인 방법으로 찾을 수 있음

  • ex) 1024개의 커밋이 있을 때, 최대 10번이면 문제의 커밋을 찾을 수 있음

Alt text

상황 설명

🐛 리포지토리에 있는 test.txt 파일에 boat 대신, car가 존재한 버그가 발생

튜토리얼 진행

1. 리포지토리 클론

git clone https://github.com/mon0mon/Git_Bisect_Tutorial.git

2. test.txt의 내용 확인

### HEAD 기준
row
row
row
your
car
gently
down
the
stream

3. bisect 시작

git bisect start

4. 현재 커밋을 bad로 지정

git bisect bad HEAD

5. 버그가 발생하기 전의 커밋을 good으로 지정

git bisect good 34ba8a04dd66

6. bisect로 현재 확인 중인 커밋에서 버그가 발생했는 지 확인

## Powershell
Select-String .\test.txt -pattern boat
## Bash
grep boat test.txt

Alt text Alt text

버그가 여전히 존재하므로, git bisect bad 명령어로 다음 커밋까지 진행

7. 버그가 발생하지 않은 커밋일 경우 git bisect good으로 지정

Alt text Alt text Alt text

8. git bisect reset으로 bisect 종료

Alt text

참고

  1. metaltoad
  2. 강남언니
  3. sumologickorea