"치명적 : 잘못된 개정"은 무엇을 의미합니까?
맥락에서:
git revert HEAD~2 myFile
fatal: bad revision '/Users/rose/gitTest/myFile'
HEAD ~ 2가 존재한다고 확신합니다.
앰버 수정 이 정확합니다. reset
대신 을 사용하려고했습니다 revert
.
주어진 커밋에서 단일 파일을 상태로 되돌리려면 실제로 다음 checkout
명령 을 사용하고 싶습니다 .
git checkout HEAD~2 myFile
revert
명령은 전체 커밋을 되돌리기 위해 사용된다 (그리고 당신을 되돌릴하지 않습니다 에 커밋, 실제로 단지 변경 되돌아 만든 커밋에 의해 - 사용자가 지정한 한 후 다른이있는 경우 커밋은 나중에 되돌릴 수 없습니다 것입니다 커밋 ).
IntelliJ 에서이 오류가 발생했으며 이러한 답변 중 어느 것도 도움이되지 않았습니다. 그래서 여기에 내가 그것을 해결 한 방법이 있습니다.
어떻게 든 내 하위 모듈 중 하나가 .git
디렉토리를 추가했습니다 . 내가 삭제 한 후 모든 자식 기능이 반환되었습니다.
git revert
파일 이름 매개 변수를 사용하지 않습니다. 원하십니까 git checkout
?
적절한 하위 모듈이나 하위 트리를 사용하지 않고 다른 내부에 git 디렉토리가 있었기 때문에 Idea / Webstorm에 "치명적 : 잘못된 개정"이있었습니다.
나는 다음 .git
과 함께 dirs를 확인했습니다 .
find ./ -name '.git' -print
Git 되돌리기는 커밋 만 허용합니다.
문서에서 :
하나 이상의 기존 커밋이 주어지면 관련 패치가 도입 한 변경 사항을 되돌립니다.
myFile
git revert
파일 경로를 허용하지 않기 때문에 커밋으로 해석됩니다 . 커밋 만
이전 커밋과 일치하도록 하나의 파일 변경
이전 커밋과 일치하도록 하나의 파일을 변경하려면-다음을 사용하십시오. git checkout
git checkout HEAD~2 myFile
Intellij와 비슷한 문제가있었습니다. 문제는 누군가 Intellij에서 비교하려는 파일을 실제로 Git에서 삭제하지 않고 .gitignore에 추가했다는 것입니다.
왜 myFile
거기에 지정 하고 있습니까?
Git 되돌리기는 지정한 커밋을 되돌립니다.
git revert HEAD~2
HEAD~2
커밋을 되돌립니다.
git revert HEAD~2 myfile
되돌리기 HEAD~2
ANDmyFile
I 걸릴은 myFile
당신이 되돌리려하는 파일입니다? 그 경우 사용
git checkout HEAD~2 -- myFile
커밋을 삭제하려면 git rebase 명령을 사용해야 할 수 있습니다.
자식 rebase -i HEAD ~ 2
커밋 메시지를 삭제하고 해당 파일을 저장하면 삭제 된 커밋이 자동으로 사라집니다.
제 경우에는 문제의 파일 (잘못된 커밋 해시 포함)이 실제로 Git에 추가되지 않은 일관성없는 상태가 있었는데, 이것은 IntelliJ의 상태와 어떻게 든 충돌했습니다. 명령 줄에서 git을 사용하여 파일을 수동으로 추가하면 문제가 해결되었습니다.
참고 URL : https://stackoverflow.com/questions/14550802/what-does-fatal-bad-revision-mean
'development' 카테고리의 다른 글
PDO :: fetchAll 대 PDO :: fetch in a loop (0) | 2020.11.08 |
---|---|
@Valid 주석은 Spring에서 무엇을 의미합니까? (0) | 2020.11.08 |
"이중 사용 가능 또는 손상"오류를 추적하는 방법 (0) | 2020.11.07 |
foldl은 꼬리 재귀 적이므로 foldr이 foldl보다 빠르게 실행되는 이유는 무엇입니까? (0) | 2020.11.07 |
php-Location : header를 호출 한 후 exit ()를 호출해야합니까? (0) | 2020.11.07 |