6
손상된 git 객체가 있습니다. git 객체 디렉토리에서 파일의 크기는 0입니다.git에서 손상된 느슨한 파일을 복구하는 방법
먼저 fsck를 : 다음
git fsck --full
fatal: loose object a35c1489005cca1ffeb3c2d3e4d63988408b6a24 (stored in .git/objects/a3/5c1489005cca1ffeb3c2d3e4d63988408b6a24) is corrupted
LS :
ls -l .git/objects/a3/5c1489005cca1ffeb3c2d3e4d63988408b6a24
----------+ 1 sampath ???????? 0 Sep 13 15:26 .git/objects/a3/5c1489005cca1ffeb3c2d3e4d63988408b6a24
해당 파일이 디스크에 존재하지 않는다!?
# git cat-file -t a35c1489005cca1ffeb3c2d3e4d63988408b6a24
error: unable to find a35c1489005cca1ffeb3c2d3e4d63988408b6a24
fatal: git cat-file a35c1489005cca1ffeb3c2d3e4d63988408b6a24: bad file
당기고 자 할 때이 오류가 가장 먼저 나타납니다.
파일을 제거하고 풀을 시도했지만 작동하지 않았습니다. 파일이 누락되었다고 불평했다. 내가 파일을 제거하고 fsck를 실행
# git fsck --full
broken link from commit 1e5980c224ff19b19ad99dbefed4c7c64c58aee6
to tree a35c1489005cca1ffeb3c2d3e4d63988408b6a24
dangling tree 0401d636a512b208dffd6ac6e153ab0a061f8d5d
dangling blob 58014c0266784a1e3cc1502de82837c5f36c8514
dangling tree 0507fa56260c693cea678eab0343240c5bba06ad
dangling tree 130770880c664a0b0cf5a21d037cbdba7480dc90
난 다시 몇 커밋가는 피곤 객체 그것은 도움이되지 않았다 저를 보여 주었다.
어떻게 복구 할 수 있습니까?
어딘가에 복사본이 있습니까? 그렇게한다면, 거기에서 물건을 걸러 낼 수 있습니다. 당신이 어딘가에서 그것을 당기고 있었기 때문에, 당신은 그 repo에 그 객체를 가지고 있기를 바랍니다. – Andy
http://stackoverflow.com/questions/801577/how-to-recover-git-objects-damaged-by-hard-disk-failure help ? (물론 그 repo의 백업을 가지고 있다면) – VonC
나는 이것을 시도했다. 저장소를 복제하고 개체의 압축을 풉니 다. 하지만 0 크기를 가진 느슨한 개체 파일을 찾을 수 없습니다. 이것은 원격지에 아직 푸시되지 않은 로컬 커밋 중 하나에 속한다는 것을 의미합니까? –