변경 복구와 백업
이 문서의 결과: 실수로 손상시킨 파일을 이전 상태로 되돌린다.
시작 조건
contracts디렉토리가 Git으로 버전 관리되고 있어야 합니다(권장). Git 저장소가 아니라면 수동 백업본이 필요합니다.
Git으로 되돌리기 (권장)
-
변경 상태를 확인합니다.
git status --short -
특정 파일을 마지막 커밋 상태로 되돌립니다.
git checkout -- contracts/wwwroot/HDS/BOD/BOD010.html -
아직 커밋하지 않은 여러 파일을 한꺼번에 되돌려야 한다면 되돌릴 범위를 반드시
git status로 먼저 확인한 뒤 진행합니다. 의도하지 않은 다른 작업자의 변경까지 지우지 않도록 주의합니다.
저장소가 없을 때의 대안
- 계약 파일(json/xml)은 수정 전에 같은 디렉토리에
.bak확장자로 복사해 둡니다. - 화면 파일은 수정 전 상태를 별도 폴더에 스냅숏으로 남깁니다.
- 실습이 끝나면 임시 백업 파일을 정리해 저장소를 깨끗하게 유지합니다.
성공 증거
- 의도적으로 파일 하나를 손상시켰습니다(예: JSON 괄호 하나 삭제).
-
git status로 변경된 파일을 확인했습니다. -
git checkout --으로 파일을 원래 상태로 되돌리고 정상 동작을 확인했습니다.
실패하면
git checkout이 "찾을 수 없는 경로"라고 하면 현재 작업 디렉토리와 파일 경로를 다시 확인합니다.- 이미 커밋까지 해버린 잘못된 변경은
git revert나 새 커밋으로 수정하는 것이 안전합니다.reset --hard처럼 이력을 지우는 명령은 다른 사람과 공유 중인 브랜치에서는 사용하지 않습니다.