나를 위해 일한 유일한 것은 다른 폴더의 저장소를 체크 아웃하는 것입니다. 현재 저장소가 /home/me/current
.
그런 다음
git clone /home/me/current /home/me/temp
이것은 저장소의 별도 복제본을 만듭니다. /home/me/temp
이제 /home/me/temp
내가 원하는대로 가서 할 수 있습니다 . 예를 들면
git reset --hard commit-hash-before-delete
이제 삭제 된 파일 폴더를 다시 복사 할 수 있습니다.
cp -r /home/me/temp/some/deleted/folder /home/me/current/some/deleted/folder
임시 폴더를 삭제하십시오.
rm -rf /home/me/temp
의 예
git checkout -- some/deleted/folder
git checkout -- some/deleted/folder/*
작동하지 않습니다
$ git checkout -- some/deleted/folder/*
zsh: no matches found: some/deleted/folder/*
$ git checkout -- some/deleted/folder
error: pathspec 'some/deleted/folder' did not match any file(s) known to git.
같은 다른 예
git reset --hard HEAD
삭제 된 파일 외에도 파괴적입니다. 다른 모든 변경 사항도 손실됩니다.
비슷하게
git reset --hard some-commit
이후 커밋을 잃게됩니다. some-commit
git status
당신에게 어떤 명령 (들)에 대한 힌트를 줄 것이다 실행