IT이야기/IT Level-up

[Git reset --hard] 예전 commit 한 버전으로 되돌리고 싶을 때

FelixShin 2016. 1. 24. 00:19
반응형




Git을 이용해서 형상을 관리할 때, 


예전에 여러가지 이유로 commit한 버전으로 돌리고 싶을 때가 있을 것이다.


또는  프로그램 개발 도중 프로그램 설정이 망가졌을 때.... 역시 예전에 commit 한 버전으로 back하고 싶을 것이다.

-> 프로그램 설정이 어디서 망가졌는지 해결이 잘 안될 때


위의 두가지 경우에 해결 방법은 간단하다.



1. git bash에서 git log 를 입력

-> 이전의 모든 commit 이력이 나오는데, 이 이력 중에 되돌리고 싶은 commit 버전을 찾는다.


실습 예)

$ git log
commit 326fc9f70d022afdd31b0072dbbae003783d77ed
Author: yourname <yourname@yourmail.com>
Date:   Mon Jul 16 23:17:56 2012 +0900

    add의 설명을 추가

commit 48eec1ddf73a7fb508ef664efd6b3d873631742f
Author: yourname <yourname@yourmail.com>
Date:   Mon Jul 16 23:16:14 2012 +0900

    first commit

2.  git reset --hard <commit>

- > commit 오른쪽에 id를 <commit> 대신에 적고 실행시키면 해당 커밋 버전으로 되돌아감

위에서 처럼 commit 326fc9f70d022afdd31b0072dbbae003783d77ed로 돌아가고 싶을 경우 아래처럼 입력


실습 예)

git reset --hard 326fc9f70d022afdd31b0072dbbae003783d77ed

3) 만약에 잘못 reset 하였을 경우, 원복 하고 싶을 때는


$ git reset --hard ORIG_HEAD

위처럼 입력해주면 됩니다.


참고 :

https://backlogtool.com/git-guide/kr/stepup/stepup7_3.html