Git에서 비활성 리모트 브랜치 참조를 삭제하려면 어떻게 해야 합니까?
현재 보고서에는 다음과 같은 출력이 있습니다.
$ git branch -a
* master
remotes/origin/master
remotes/public/master
remotes/public/master다음 중 하나:
$ git branch -d remotes/public/master
error: branch 'remotes/public/master' not found.
「」, 「」의 도,git remote 리스트에는 되어 있지 않기 이상합니다.public:
$ git remote show
origin
지점 목록에서 'remotes/public/master'를 삭제하려면 어떻게 해야 합니까?
업데이트, 시도했습니다.git push★★★★★★★★★★★★★★★★★★:
$ git push public :master
fatal: 'public' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
청소가 필요할 수 있습니다.
git gc --prune=now
또는 프루닝이 필요할 수 있습니다.
git remote prune public
가지치기하다
<name> 아래의 오래된 트래킹브런치를 모두 삭제합니다.이러한 오래된 브랜치는 <name>이 참조하는 리모트저장소에서 이미 삭제되었지만 "remotes/<name>"에서는 아직 로컬로 사용할 수 있습니다.
--dry-run 옵션을 사용하면 어떤 브런치를 제거할지 보고하지만 실제로는 제거하지 않습니다.
단, 이 경우 사전에 다음 방법으로 정리해야 합니다.
git remote rm public
rm
<name>이라는 이름의 리모트를 삭제합니다.리모트 트래킹브런치 및 리모트 설정 모두 삭제됩니다.
따라서 컨피규레이션파일을 수동으로 편집하여 이것이 발생하지 않았거나 권한에 문제가 있을 수 있습니다.
다시 한 번 실행해서 무슨 일이 일어나는지 지켜볼 수도 있어.
어드바이스 컨텍스트
리비전 로그를 보면 더 많은 "올바른" 기술을 제안했다는 것을 알 수 있습니다. 어떤 이유로든 저장소에서 작업하고 싶지 않았습니다.
되지 않은 하게 한 했다.git gc왼쪽 뒷부분을 수리해야 했습니다.
git branch -rd origin/badbranch으로 하기에는 "nucking" nucking "nucking" 입니다.또는git push origin :badbranch리모트 브랜치를 nucking 하기 위해서, 통상은 전화할 필요가 없습니다.git gc
당신이 해야 할 일은
git fetch -p
원격으로 삭제된 모든 로컬 분기가 제거됩니다.
git 1.8.5+ 를 사용하고 있는 경우는, 자동적으로 설정할 수 있습니다.
git config fetch.prune true
또는
git config --global fetch.prune true
git push public :master
인 '하다'가 됩니다.master켄트 프레드릭이 지적한 것처럼요
리모트 트래킹브런치를 일람표시하려면:
git branch -r
리모트 트래킹브런치를 삭제하려면 , 다음의 순서에 따릅니다.
git branch -rd public/master
당신이 해야 할 일은
$ git branch -rd origin/whatever
그렇게 간단하다.여기서 gc를 호출할 이유가 없습니다.
git gc --prune=now네가 원하는 게 아니야
git remote prune public
★★★★★★★★★★★★★★★★★」git remote prune origin 소스일 # " " " "
당신이 원하는 것은
심판이 꽉 찼을 때 받아들여진 답변은 나에게 효과가 없었다.단, 이것은 다음과 같습니다.
$ git remote add public http://anything.com/bogus.git
$ git remote rm public
에는 내우에 저장되어 있는 ..git/packed-refs 이 일반 할 수 .git br -D만지는 방법을 모릅니다(최소한 버전 1.7.9.5에서는).
이 솔루션은 https://stackoverflow.com/a/11050880/1695680에서 찾을 수 있습니다.
git push origin --delete <branch name>
출처: http://www.gitguys.com/topics/adding-and-removing-remote-branches/
에 대해서git branch -rd이러한 문제를 스스로 해결하는 방법은, 리모트 리포트로서 취급해, 리모트 삭제를 실시하는 것입니다. git push . :refs/remotes/public/master다른 방법이 작동하지 않고, 없애고 싶은 이상한 참조가 있다면, 이 원시적인 방법은 확실합니다.어떤 종류의 참조도 삭제(또는 작성!)할 수 있는 정확한 정밀도를 제공합니다.
저도 비슷한 문제가 있었어요.어떤 대답도 도움이 되지 않았다.제 경우 두 개의 삭제된 원격 저장소가 영구적으로 표시되었습니다.
내 마지막 생각은 그것에 대한 모든 언급을 손으로 지우는 것이었다.
저장소 이름을 "Repo"라고 합니다.나는 했다:
find .git -name Repo
그래서 대응하는 파일과 디렉토리를 .filer 폴더에서 삭제했습니다(이 폴더는 Rails 앱이나 컴퓨터 https://stackoverflow.com/a/19538763/6638513)에서 찾을 수 있습니다).
그리고 나서 나는 했다:
grep Repo -r .git
텍스트 파일을 찾아서 해당 행을 삭제했습니다.이제, 모든 것이 괜찮아 보입니다.
보통은 이 일을 맡기는 게 좋겠어요.
관련성은 미미하지만 이전과 같은 상황에서는 도움이 될 수 있습니다.리모트 저장소에는 네트워크 파일 공유를 사용합니다.지난주에는 정상적으로 작동했지만 이번 주에는 "Remote origin이 브랜치 참조/헤드/마스터에 대한 참조를 광고하지 않았습니다.이 참조는 리모트에 존재하지 않거나 권한 설정에 의해 숨겨질 수 있습니다.
하지만 우리는 부패를 위한 어떠한 조치도 취해지지 않았다고 믿었다.NFS에서 스냅샷을 만들기 때문에 각 "이전 버전"을 검토해보니, 3일 전 저장소 크기(MB)가 282MB에서 33MB로 증가했고, 현재 약 1,403개의 새로운 파일과 300개의 폴더가 존재합니다.동료에게 문의했더니 그날 푸시하려고 해서 취소했어요.
NFS "Restore" 기능을 사용하여 해당 날짜 바로 이전으로 복원하고 이제 모든 것이 정상적으로 작동합니다.전에 가지치기를 해봤는데 도움이 안 되는 것 같았어좀 더 가혹한 청소가 먹혔을지도 몰라
언젠가 이것이 다른 누군가에게 도움이 되기를 바랍니다!
제이
어떻게 이 혼란에 빠졌는지는 모르겠지만 오류 메시지가 약간 달랐습니다.
> git 리모트> git 브랜치경고: 끊어진 참조/리모트/원점/헤드 무시* 메인
>
하지만 이 페이지의 다른 부분에 있는 수정 사항을 약간 재해석하여 수정할 수 있었습니다.이 말은 내가 키워드를 대체했다는 뜻이다.HEAD브랜치명의 경우<remote>/<branch>다른 제안들은 모두 효과가 없었습니다.gc,prune(등)그래서 아이디어가 부족해서 잘 되길 바랐어요.어쨌든, 그것은 마법처럼 작동했다.
> git 리모트
> git 브랜치 - origin / HEAD리모트 트래킹 브랜치 오리진/HEAD를 삭제했습니다(refs/remotes/origin/main).
> git 브랜치
* 메인
>
여기 있는 모든 것을 시도해 봤지만 아무 것도 되지 않았다.다른 모든 것이 실패했을 경우는, 텍스트 파일 「.git/packed-refs」로부터 문제의 브랜치를 삭제해, 「.git\refs\remotes\origin<branchName>」로부터 문제의 브랜치를 삭제합니다.
언급URL : https://stackoverflow.com/questions/1072171/how-do-you-remove-an-invalid-remote-branch-reference-from-git
'programing' 카테고리의 다른 글
| 오류: 찾고 있는 리소스가 제거되었거나 이름이 변경되었거나 일시적으로 사용할 수 없습니다. (0) | 2023.04.23 |
|---|---|
| 방법 옆의 목표 C에서 더하기 기호와 빼기 기호는 무엇을 의미합니까? (0) | 2023.04.23 |
| 애플리케이션 통찰력에 404개의 응답을 무시하도록 지시하는 방법 (0) | 2023.04.23 |
| C# 코드에서 WPF 텍스트 상자의 배경색 설정 (0) | 2023.04.18 |
| WPF에 form.onload가 존재합니까? (0) | 2023.04.18 |