반응형
이진 탐색
프로젝트가 진행되면서 버그는 필연적입니다. 다만, 프로젝트를 수행하면서 쌓인 커밋이 수백개라 버그가 생긴 커밋을 찾기가 어려울 수 있는데, 이를 돕기 위해 git에선 이진 탐색을 지원하고 있습니다. 이진 탐색(Binary Search)은 특정 값을 찾기 위한 효율적인 알고리즘으로 탐색의 범위를 반으로 나눠가면서 찾는 방법입니다.
이런 유용한 방법을 사용하기 위해서는 탐색 시작 - 문제 커밋 표시 - (문제가 없는) 마지막 커밋 표시의 세가지 단계로 이뤄집니다. 먼저, 아래와 같은 명령어로 이진 탐색을 시작합니다.
$ git bisect start
아래와 같은 코드를 통해 현재 커밋에 문제가 있다고 표시를 실행합니다.
$ git bisect bad
그리고 마지막으로 문제가 없는 커밋을 알고 있다면 아래와 같이 입력할 수 있습니다.
$ git bisect good [commit id]
이렇게 입력을 해주면, 문제가 최초의 커밋을 깃에서 확인을 해줍니다. 문제 커밋을 찾고나서 이진 탐색 전의 헤드로 바꿔 놓을 수 있습니다.
$ git bisect reset
참고자료
Git - Git으로 버그 찾기
버그를 찾을 때 먼저 그 코드가 왜, 언제 추가했는지 알고 싶을 것이다. 이때는 파일 어노테이션을 활용한다. 한 줄 한 줄 마지막으로 커밋한 사람이 누구인지, 언제 마지막으로 커밋했는지 볼
git-scm.com
반응형
'Git & GitHub' 카테고리의 다른 글
GitHub Action으로 LeetCode 풀이 commit 자동화하기 | LeetCode Sync (0) | 2024.12.22 |
---|---|
[Git] Github에서 생성한 레포지토리 로컬에 가져오기 | PAT 인증, Authentication failed 해결 (0) | 2024.09.16 |
[Git] 깃 관련 학습할 수 있는 소스 모음 (0) | 2021.12.05 |
[Git] 깃 개념, 단어 정리 (repository, commit, branch, fork, push, pull, fetch, pull request) (0) | 2021.11.14 |
[Git] 깃허브로 다른 사람들과 함께 프로젝트 협업하기 (원격 저장소 함께 사용, 원격 브랜치 가져오기) (0) | 2021.11.12 |