개발관련/Git

git 커밋되지 않았거나 저장되지 않은 모든 변경 내용 실행 취소

Rateye 2021. 8. 28. 16:43
728x90
반응형
질문 : git은 커밋되지 않았거나 저장되지 않은 모든 변경 사항을 실행 취소합니다.

마지막 커밋 이후의 모든 변경 사항을 취소하려고합니다. 이 게시물을 본 후 git reset --hardgit reset --hard HEAD 시도했습니다. 나는 머리가 지금 18c3773에 있다고 응답하지만 내 로컬 소스를 보면 모든 파일이 여전히 거기에 있습니다. 내가 무엇을 놓치고 있습니까?

답변

  • git add 준비했을 수있는 모든 파일의 준비가 해제됩니다.
    git reset
  • 커밋되지 않은 모든 로컬 변경 사항을 되돌립니다 (repo 루트에서 실행해야 함).
    git checkout .
    커밋되지 않은 변경 사항을 특정 파일 또는 디렉토리에만 되돌릴 수도 있습니다.
    git checkout [some_dir|file.txt]
    커밋되지 않은 모든 변경 사항을 되 돌리는 또 다른 방법 (입력하는 데 더 오래 걸리지 만 모든 하위 디렉터리에서 작동) :
    git reset --hard HEAD
  • 이렇게하면 추적되지 않은 모든 로컬 파일이 제거되므로 git 추적 파일 만 남습니다.
    git clean -fdx
    경고 : -x .gitignore 지정된 파일을 포함하여 무시 된 모든 파일도 제거합니다! -n 을 사용하여 삭제할 파일을 미리 볼 수 있습니다.

 

요약하자면, 아래 명령을 실행하는 것은 기본적으로 git clone 와 동일합니다 (하지만 아무것도 다시 다운로드하지 않으므로 훨씬 빠릅니다).

git reset
git checkout .
git clean -fdx

이에 대한 일반적인 사용법은 트리가 완전히 깨끗한 지 확인해야 할 때 빌드 스크립트에서입니다. 수정 사항이 없거나 로컬로 생성 된 개체 파일 또는 아티팩트를 빌드하지 않고 매우 빠르게 작동하고 다시 작동하지 않으려는 경우 매번 전체 저장소를 복제하십시오.

출처 : https://stackoverflow.com/questions/14075581/git-undo-all-uncommitted-or-unsaved-changes
728x90
반응형