개발관련/Git

git pull 실행 취소, 저장소를 이전 상태로 가져 오는 방법

Rateye 2021. 9. 16. 11:50
728x90
반응형
질문 : git pull 실행 취소, 저장소를 이전 상태로 가져 오는 방법

내 소스 / 리포지토리가 git pull을 수행하기 전의 이전 상태가되도록 git pull을 되돌 리거나 실행 취소하는 방법이 있습니까? 내가 원하지 않는 일부 파일을 병합했지만 나머지 파일 만 병합했기 때문에 이것을하고 싶습니다. 그래서, 그 파일을 되찾고 싶습니다. 가능합니까?

편집 : 설명을 위해 git merge를 실행 취소하고 싶습니다. 몇 가지 답을보고 나서 이렇게했습니다

git reflog
bb3139b... HEAD@{0}: pull : Fast forward
01b34fa... HEAD@{1}: clone: from ...name...

이제 어떻게해야합니까? git reset --hard 해도 괜찮습니까? 다시는 망치고 싶지 않아서 자세한 단계를 요청 하시겠습니까?

답변

git pull 실행하면 다음 작업이 순서대로 수행됩니다.

병합 단계는 구성에서 병합되도록 설정된 분기를 결합합니다. 병합 단계를 실행 취소하고 싶지만 가져 오기 가 아닐 수 있습니다 (많은 의미가 없으며 필요하지도 않음).

merge 를 실행 취소하려면 git reset --hard 를 사용하여 로컬 저장소를 이전 상태로 재설정합니다. git-reflog 를 사용하여 이전 상태의 SHA-1을 찾은 다음 재설정하십시오.

경고

이 섹션에 나열된 명령은 커밋되지 않은 모든 변경 사항을 제거하여 잠재적으로 작업 손실을 초래할 수 있습니다.

git reset --hard

또는 다음과 같은 특정 시점으로 재설정합니다.

git reset --hard master@{"10 minutes ago"}
출처 : https://stackoverflow.com/questions/1223354/undo-git-pull-how-to-bring-repos-to-old-state

 

728x90
반응형