두 개의 브랜치, master
및 working
이있는 자식 폴더가 있습니다.'치명적 : 참조가 나무가 아닙니다 : 마스터'에서 어떻게 복구 할 수 있습니까?
나는 git branch
명령을 실행할 때, 나는 3 가지를 얻을 :
desktop.ini
master
working
working
지사가 최신 (리셋 후), 내가 원하는 것을 가지고있다.
desktop.ini
브랜치가 존재하지 않아야합니다. 내가 달릴 때
git branch -d desktop.ini
그것이 존재하지 않고, 삭제 될 수 없다라고 말한다. 또한 체크 아웃 할 수 없습니다. GOO 저장소에는 각 폴더에 desktop.ini
파일이 있습니다. 저장소는 Google 드라이브 폴더이므로 저장소가 저장됩니다.
그러나 주요 문제는 더 이상 master
분기에 액세스 할 수 없다는 것입니다. 내가 시도 할 때마다
git checkout master
나는
fatal: reference is not a tree: master.
내가 그것을 삭제하려고하면, 나는
error: couldn't look up commit object for refs/heads/master
수동으로이 파일이 올바른 디렉토리에 존재 확인하고,이 데 얻을 돌아가 그 안에있는 머리.
또한 새로운 master
브랜치를 만들려고했지만 "master"라는 브랜치가 이미 존재한다고 들었습니다. 마지막으로, git log
를 실행하는 가장 최근의 커밋 준 다음
error: could not read c7d68...blah blah
fatal: failed to traverse parents of commit aed8af.....
는 master
분기를 인공 호흡의 쉬운 방법이 있습니까?
업데이트 : 작업 분기에서 마스터 분기로 헤드를 복사 했으므로 마스터에 다시 액세스 할 수 있습니다. 그러나 모든 git status
반환
error: could not read c7d68.....
error: could not read c7d68.....
fatal: Failed to traverse parents of commit aed8......
내가이 문제를 해결하기 위해 행동해야합니까?
'git fetch --unshallow'을 해 보았습니까? – Erwin
'git show-branch'는 무엇을 보여줍니까? –
@BobMazanec''git show-branch'는 "error : refs/heads/master가 유효한 객체를 가리 키지 않습니다"라는 결과를 나타냅니다. 동기화하는 Google 드라이브가 문제 일 수 있나요? 그렇다면 문제를 해결하기 위해 작업 분기 헤드의 내용을 마스터 헤드에 복사 할 수 있습니까? @pyerwin : 그쪽 명령은 무엇을합니까? 나는 Git의 전문가이며 GOOGLE은 많이 켜지지 않았다. – Mauvai