GitNotes.18-1.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 18.1: reset 작업 복구하기

Git 에서는, (거의 대부분의 경우) 시간을 되돌려 작업을 복구할 수 있다.

history를 재작성하는 명령어를 시험삼아 수행해 보기를 두려워할 필요가 없다[^1]. Git 은 기본적으로 한번 작성된 커밋을 90일간은 삭제하지 않으며, 그 기간 동안에는 reflog 를 이용하여 손쉽게 해당 커밋을 복구할 수 있다:

$ git reset @~3 # 세 커밋 이전으로 이동한다 $ git reflog c4f708b HEAD@{0}: reset: moving to @~3 2c52489 HEAD@{1}: commit: more changes 4a5246d HEAD@{2}: commit: make important changes e8571e4 HEAD@{3}: commit: make some changes ... 더 이전 커밋들 ... $ git reset 2c52489 ... 이동을 하기 전의 시작 위치로 돌아간다

[^1]: --hard--force 같은 옵션은 그래도 주의가 필요하다 — 데이터가 유실될 수 있다.

또한, 다른 사용자와 협업중인 브랜치에서는 history 재작성 관련 작업을 삼가해야 한다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형

+ Recent posts