Git & GitHub
[Git] commit 무효화하기 (git reset)
칸쵸.
2023. 12. 25. 23:41
728x90
버전관리의 또 다른 효용 : 과거로 돌아가기
커밋을 취소하는 명령어 git reset (사용에 주의가 필요함)
현재의 로그를 취소해서 과거(이전 버전)로 돌아가고싶은 경우
방법 1 : reset / 방법 2 : revert
1. 특정 버전의 상태로 돌아가고싶다
git reset 커밋id --hard
> 해당 커밋 이후의 버전 삭제 & 해당 버전으로 복귀
hard : 심플한 작동을 위해 적용한 옵션(안전성 매우 떨어짐)
그 외에 soft와 mixed 옵션도 존재하는데 잘 쓸 일은 없다
git reset 커밋id --soft,
git reset 커밋id --mixed
눈으로 보기에는 log에 존재하지 않는 이후 버전이 삭제 된 것처럼 보이지만, git은 웬만하면 정보 자체를 삭제하지 않는다
(눈에 보이지 않을 뿐, 그 정보는 남아있음 == 복구 가능)
후에 원격저장소 github를 통해서 협업 가능
저장소의 버전을 인터넷을 통해 공유
공유 이후에는 git reset를 절대절대로 해서는x
내 컴퓨터 안에만 있는 버전에 대해서만 reset 작업을 진행하자
2. git revert
reset과 달리, 해당 커밋을 취소하면서 새로운 버전을 생성한다
위의 두 명령어는 추후 정말 절박한 상황에서나 필요할 것이니...
버전 생성, 버전과 버전 사이 차이점 확인이나 잘 알아두자