경고 : 원격 HEAD는 존재하지 않는 참조를 참조하므로 체크 아웃 할 수 없습니다.
이것은 다른 원인에 대한 인기있는 오류처럼 보입니다.
"kiflea.git"라는 간단한 베어 git 저장소가 있습니다. 다음과 같이 복제합니다.
git clone git://kipdola.be/kiflea.git
그런 다음 git은 다음과 같이 말합니다. warning: remote HEAD refers to nonexistent ref, unable to checkout.
그리고 예, .git 디렉토리를 제외하고 맵에 버전이 지정된 파일이 없습니다. 어쨌든, 내가해야 할 유일한 일은 :
cd kiflea
git checkout master
작동하고 모든 파일이 있습니다. 하지만 리포지토리를 복제하면 마스터가 자동으로 체크 아웃되는 것으로 생각했는데 정확히 무슨 일이 일어나고 있으며 어떻게 수정합니까?
git checkout master
비트를 수행 한 후 로컬 .git 구성 파일에 추가됩니다.
[branch "master"]
remote = origin
merge = refs/heads/master
이 git 저장소가 먼 과거에 svn 저장소였던 것을 아는 것은 흥미로울 것입니다.
추신 : gitweb을 사용하여 베어 저장소를 탐색 할 때 분명히 master
분기가 있습니다. http://kipdola.be/gitweb/?p=kiflea.git;a=summary
이는 warning: remote HEAD refers to nonexistent ref, unable to checkout.
원격 (베어) 저장소 HEAD
에 동일한 저장소의 게시 된 분기와 일치하지 않는 분기 참조가 파일에 포함되어 있음을 의미 합니다.
경고는 git이 체크 아웃하지 않았다는 것을 의미합니다. 복제 된 저장소는 그렇지 않으면 괜찮습니다. git branch -a
가능한 분기를 확인 git checkout the-branch-you-want
하고 문제를 해결하려면 수행 하십시오 .
이것은 일반적으로 해당 파일의 기본 내용 ( .git/HEAD
또는 HEAD
베어 저장소의 경우 일반 )이 누군가이 저장소 ref: refs/heads/master
로 이동하면 clone
기본적으로 브랜치를 복제해야한다는 내용이기 때문에 발생 합니다 refs/heads/master
. 기본적으로 Git은 refs/heads/
접두사 없이 (즉, master
기본적으로) 로컬 브랜치를 생성 합니다. 시도 git help symbolic-ref
자세한 내용은.
이 상황의 문제는 Git이 원격 심볼릭 참조 를 수정하는 방법을 제공하지 않기 때문에 Git 호스팅 공급자가 구현 한 것을 사용하거나 (예 : 설정-관리자 권한이있는 경우 GitHub의 기본 분기) 또는 분기 이름을 사용해야한다는 것입니다. master
기본 브랜치로 (그 기호 참조의 기본값이기 때문에).
원격 git 저장소에 대한 셸 액세스 권한이있는 경우 기본적으로 사용하려는 브랜치 이름이 cd path/to/bare/git/repo; git symbolic-ref HEAD refs/heads/XYZ
어디에 있는지 간단히 알 수 있습니다 XYZ
.
이 문제를 해결하는 한 가지 방법은 커밋이없는 새 원격 git push name-of-the-remote my-special-branch-name
베어 리포지토리를 생성 한 다음 단일 브랜치를 포함하는 베어 리포지토리를 생성 my-special-branch-name
하지만 HEAD
심볼릭 참조는 여전히를 가리키는 기본값을 포함하는 것 master
입니다. 결과적으로 앞서 언급 한 경고가 표시됩니다.
더 이상 master
브랜치를 사용하지 않고 로컬 및 원격 저장소에서 손실 되었기 때문에 동일한 문제가 발생 했습니다.
원격 저장소는 여전히으로 HEAD
설정되어 master
있으며 실제로 사용하는 원격 분기 중 하나로 변경했으며 모든 것이 잘 작동합니다.
원격 저장소에 액세스 할 수있는 경우 :
- 당신의
remote_repo.git
; HEAD
파일 수정- 변경
ref: refs/heads/master
에ref: refs/heads/your_branch
예, 이것은 마스터와 다른 브랜치를 체크 아웃하려는 git 클론과 관련이 있습니다. 그냥 해
git clone user@git-server:project_name.git -b branch_name /some/folder
이렇게하면 브랜치 이름을 통해 정확한 브랜치를 복제하는 데 도움이됩니다.
이 오류가 표시되었지만-내 프로젝트는 여전히 해당 저장소에 연결되어 있습니다- git branch
명령을 실행하고 적절한 분기를 git checkout *branchname
확인한 다음 실행 하고 BOOM-모든 것이 잘되었습니다.
원격 저장소에 확실히 문제가 있습니다. 저장소의 새 복제본을 만들어 문제를 해결할 수 있습니다. 또한 마스터 브랜치에 새 커밋을 푸시하는 것도 작동 할 수 있습니다.
나는 그것이 *
어떻게 든 원격 서버를 속이는 커밋 로그 의 선두라고 생각 합니다.
일부 메뉴 링크를 사용하여 저장소의 웹 인터페이스를 탐색 할 수 있지만 다른 링크 404 - Unknown commit object
는 특히 요약 페이지에서 또는 이와 유사한 것으로 실패 합니다.
마지막 커밋 메시지를 수정할 수 있는지 확인한 다음 업데이트를 강제로 푸시하여 문제가 해결되는지 확인하십시오. 서버 악마에 버그가있을 수 있습니다. 문제가 해결되면 git 목록 git@vger.kernel.org (일반 텍스트 메시지 만 해당)에보고 할 가치가 있습니다.
베어 레포를 만들 때 동일한 문제가 발생했습니다.
리포지토리를 복제하고 로컬 마스터 브랜치를 만든 다음 마스터를 원격 리포지토리로 푸시하는 것만으로 해결했습니다.
1) 저장소 복제
$ git.exe clone --progress -v "the remote path" "my local path"
2) 로컬에서 마스터 브랜치를 만듭니다.
$ git checkout -b master
3) 로컬 브랜치에서 커밋
$ git add readme.md
$ git commit –m “Added readme”
4) 원격에서 로컬 마스터 푸시
$ git push origin master
If there is no master branch actually available, check the following; If there is a file named 'packed-refs' inside the '.git' folder, open it and you could find all references listed.
Something like below;
# pack-refs with: peeled fully-peeled
e7cc58650190bd28599d81917f1706445d3c6d8b refs/tags/afw-test-harness-1.5
^cfae4f034e82591afdf4e5ed72279297d0eee618
6afe1bcfa4bd74de8e0c8f64d024e1cc289206df refs/tags/afw-test-harness-2.1
^c32f7fa495d4b44652f46c065fcd19c3acd237a6
72f2e4284dfbf27c82967da096c6664646bbdd19 refs/tags/android-1.6_r1
^50992e805e758e2231f28ec2127b57a1a9fd0ddc
0cbd528cad1cee9556098b62add993fc3b5dcc33 refs/tags/android-1.6_r1.1
Then use;
git checkout refs/tags/xxxx
Or
git checkout 'HASH value'
to checkout the required version. Thank you.
'IT박스' 카테고리의 다른 글
TreeMap 또는 HashMap? (0) | 2020.10.27 |
---|---|
사람이 읽을 수 있고 사용할 수있는 짧지 만 고유 한 ID 생성 (0) | 2020.10.27 |
React-단일 구성 요소의 마운트 및 마운트 해제 애니메이션 (0) | 2020.10.27 |
ILMerge를 Visual Studio 빌드 프로세스에 통합하여 어셈블리를 병합하는 방법은 무엇입니까? (0) | 2020.10.27 |
numpy 배열의 n 번째 항목마다 서브 샘플링 (0) | 2020.10.27 |