반응형
Git에서 특정 커밋만 되돌리는 방법은 git revert 명령어를 사용하면 됩니다. 이 방법은 되돌리고 싶은 커밋의 변경 사항을 무효화하는 새로운 커밋을 생성하므로, 기존의 Git 기록은 유지되고, 협업 중인 동료들에게도 변경 사항이 명확히 전달됩니다.
방법 1: 특정 커밋 되돌리기 (Revert)
- 커밋 로그 확인예:
a1b2c3d Fix bug in login logic f4e5d6c Add new feature 789abcd Update READMEgit log --oneline- 되돌리고 싶은 커밋의 해시 값 확인
위 로그에서 되돌리고 싶은 커밋의 해시 값을 복사합니다. 예:f4e5d6c. git revert명령 실행예:이 명령은 해당 커밋의 변경 사항을 되돌리는 새로운 커밋을 생성합니다.git revert f4e5d6cgit revert <커밋 해시>- 수정 사항 확인 후 커밋 완료
- Git이 자동으로 커밋 메시지를 생성합니다.
- 편집기를 통해 커밋 메시지를 수정하거나, 그대로 저장 후 종료하면 됩니다.
방법 2: 여러 커밋 되돌리기
여러 커밋을 한 번에 되돌리고 싶다면, 여러 해시를 git revert에 순차적으로 적용할 수 있습니다.
예:
git revert <커밋 해시1> <커밋 해시2> ...
방법 3: 특정 파일의 변경만 되돌리기
- 특정 커밋에서 특정 파일의 변경만 되돌리려면:예:
git checkout f4e5d6c -- src/main.jsgit checkout <커밋 해시> -- <파일 경로>- 되돌린 파일을 스테이징하고 커밋합니다.
git add src/main.js git commit -m "Revert changes from f4e5d6c for src/main.js"
주의사항
git revert는 되돌린 내용을 새로운 커밋으로 추가하기 때문에, 협업 환경에서 변경 사항이 명확히 보이는 장점이 있습니다.- 원격 저장소에 이미 푸시된 커밋을 되돌릴 때는
git reset대신git revert를 사용하는 것이 안전합니다.
반응형
'작업 tools > git' 카테고리의 다른 글
| git 에서 ^M 차이나는 경우 (0) | 2025.04.08 |
|---|---|
| git 특정 파일 커밋 로그 출력 방법 (0) | 2025.01.09 |
| git commit 병합하기 (0) | 2025.01.08 |
| git을 사용하여 특정 commit 간 변경된 파일만 추출하기 (0) | 2024.12.20 |
| git에서 특정 commit 의 변경사항을 확인하는 세가지 방법 (2) | 2024.12.20 |