개발관련/Git

Git에서 마지막 커밋을 해제하는 방법

Rateye 2021. 10. 19. 11:26
728x90
반응형
질문 : Git에서 마지막 커밋을 해제하는 방법

git에서 마지막 커밋을 어떻게 해제 할 수 있습니까?

그것은

git reset --hard HEAD

또는

git reset --hard HEAD^

?

답변

"uncommit"이 의미하는 바가 무엇인지 확실하지 않고 git reset 을 사용할 것인지 모르겠다면 "Revert to a previous Git commit "을 참조하십시오.

git reset 더 잘 이해하고 싶다면 "" "git reset"이 일반 영어로 무엇을하는지 설명 할 수 있습니까? "를 참조하십시오.

git reset 을 사용하려는 경우 "uncommit"의 의미에 따라 다릅니다. 수행하려는 모든 작업을 실행 취소하고 나머지는 그대로두면 다음을 사용하십시오.

git reset --soft HEAD^

커밋 작업과 스테이징 한 모든 것을 실행 취소하고 작업 트리 (파일은 그대로 유지)를 유지하려면 :

git reset HEAD^

그리고 실제로 완전히 실행 취소하고 커밋되지 않은 모든 변경 사항을 버리고 모든 것을 이전 커밋으로 재설정 하려면 (원래 질문에서 물었던 것처럼) :

git reset --hard HEAD^

원래 질문은 또한 HEAD^ 아니라 HEAD ^라고 물었습니다. HEAD 는 현재 커밋을 나타냅니다. 일반적으로 현재 체크 아웃 된 브랜치의 팁입니다. ^ 는 모든 커밋 지정자에 첨부 할 수있는 표기법이며 "이전 커밋"을 의미합니다. 따라서 HEAD^ master^ 가 마스터 브랜치의 끝에있는 커밋 인 것처럼 현재 커밋 이전의 커밋입니다.

다음은 커밋을 지정하는 모든 방법을 설명 하는 git-rev-parse 문서의 ^ 는 여러 가지 중 기본적인 것입니다).

출처 : https://stackoverflow.com/questions/2845731/how-to-uncommit-my-last-commit-in-git
728x90
반응형