WEBBOOK CHAPTER

현장에서 살아남는 Git: 15장 사고 직후에는 멈추고 증거부터 남긴다

15장 사고 직후에는 멈추고 증거부터 남긴다

실수 직후 가장 위험한 행동은 검색 결과의 reset --hard를 맥락 없이 복사하는 것이다. 아래 진단을 텍스트 파일이나 이슈에 남긴다. 비밀이 들어간 원격 URL은 가린다.


git status
git log --oneline --graph --decorate --all -20
git reflog -20
git diff
git diff --staged

그 다음 세 질문에 답한다.

  1. 변경은 커밋 전인가, 로컬 커밋인가, 이미 공유됐는가?
  2. 파일 내용을 보존할 것인가, 커밋 구조만 바꿀 것인가?
  3. merge, rebase, cherry-pick 같은 진행 중 작업이 있는가?

모르면 먼저 저장소 폴더를 별도 위치에 복사할 수 있다. 단, 비밀과 대용량 파일 취급 정책을 지킨다. untracked 파일은 reflog가 보호하지 않는다. 중요하지만 아직 추적되지 않은 파일은 별도 백업이 우선이다.