Skip to content

Git으로 Bug 찾기

sustainable-git edited this page Nov 18, 2021 · 3 revisions

Git으로 Bug 찾기

사건 개요

  • 일시 : 목요일 오후 20시

  • 상황 : 배포를 이미 했는데, 앱이 크래시가 남

  • 현상 : 기록 화면에서 사진을 저장에 동의하거나, 기록을 종료하면 앱이 크래시가 난다

  • 예상되는 원인

    • 목요일 오후 17시 30분에 Merge한 이후 발생한 버그임
    • 따라서 목요일 오후 17시 30분 이후 코드가 문제일 것이라고 판단

해결 과정

  • 목요일 17시 30분 이전 코드로 돌아가기

    • git Checkout으로 돌아가서 켜 봄

      • 문제가 해결되지 않음
  • Git Bisect를 이용

  • 에러 해결하기

    • 변경된 코드를 되돌려 보거나 주석처리를 했지만, 에러 코드를 찾을 수 없었음
    • Git diff로 찾아보니 버그는 소스코드에 있는 것이 아니라 plist에 있는 "권한"이 삭제된 것이었음

결론

  • 목요일 17시 30분 이전에 가능했던 이유

    • 이미 시뮬레이터에서 권한을 허용해 두었기 때문에 버그가 안 났음
  • Git은 좋은 도구이다. 잘 이용하면 버그도 찾을 수 있음

    • Git bisect는 O(logN)이기 때문에 버그를 쉽게 찾을 수 있음
Clone this wiki locally