git reset 후에 이전 commit으로 되돌리고 서버에도 반영하기



git을 사용하다보면 에러가 발생하여 이전 버전으로 commit 해야 할 경우가 생긴다. 

이럴 경우에는 git reset 을 통해서 이전 버전으로 넘긴다.



위와 같은 커밋이 있다고 가정하자. 
타인과의 작업이 발생하면서 commit 557cf31 부터 문제가 발생했다. 

이 때, 나는 ff32f4d로 돌아가고 싶다. 
완벽하게 모든 파일을 돌리고 싶기 때문에 --hard 조건을 넣어준다. 

자세한 reset 에 대한 설명은 아래의 링크를 참조한다. 

http://www.devpools.kr/2017/02/05/%EC%B4%88%EB%B3%B4%EC%9A%A9-git-%EB%90%98%EB%8F%8C%EB%A6%AC%EA%B8%B0-reset-revert/ 

완성되면 아래와 같이 HEAD ... 와 같은 내용이 나온다. 

$ git reset --hard  ff32f4d
HEAD is now at ff32f4d 180602


현재 로컬 디렉토리에는 이전 상태로 돌아갔지만 서버는 아직 그대로이다. 

이럴 경우에는 브랜치 앞에 +를 붙여서 강제로 push 해주면 해결된다!! 

git push origin +master 



- 출처  -
http://rocksea.tistory.com/436