나는 달렸다 git branch -a
* master
remotes/origin/test
remotes/origin/master
원격 지점을 삭제하고 싶습니다
난 노력 했어
git push origin --delete remotes/origin/test
알았어
오류 : ‘원격 / 원산지 / 테스트’를 삭제할 수 없습니다 : 원격 참조가 없습니다
어떻게 존재하지 않습니까?
나는 git branch -a
했고 나는 그것을 보았다.
내가 뭘 그리워 했어?
답변
명령 git branch -a
은 로컬 저장소에있는 원격 브랜치를 표시 합니다 . 약간 혼란 스러울 수 있지만 이해하려면 원격 브랜치와 원격 리포지토리에있는 브랜치간에 차이가 있음을 이해해야합니다. 원격 브랜치는 원격 리포지토리의 브랜치에 매핑 되는 로컬 브랜치입니다. 따라서 원격 브랜치 세트는 원격 저장소의 상태를 나타냅니다.
원격 브랜치 목록을 업데이트하는 일반적인 방법은를 사용하는 것 git fetch
입니다. 이것은 원격에서 업데이트 된 브랜치 목록을 자동으로 가져오고 로컬 저장소에 원격 브랜치를 설정하고 누락 된 커밋 객체를 가져옵니다.
그러나 기본적으로 git fetch
원격에 더 이상 대응하는 분기가없는 원격 분기는 제거하지 않습니다. 그렇게하기 위해서는, 당신은 명시 적으로 할 필요가 치기 원격 지점의 목록을 :
git fetch --prune
원격에 더 이상 존재하지 않는 원격 브랜치를 자동으로 제거합니다. 그 후, git branch -r
실제로 원격에 존재하는 업데이트 된 분기 목록이 표시됩니다. 그리고를 사용하여 삭제할 수 있습니다 git push
.
즉,를 사용 git push --delete
하려면 원격 저장소에서 분기 이름을 지정해야합니다. 원격 지사의 이름이 아닙니다. 따라서 지점 test
(원격 지점으로 표시 origin/test
) 을 삭제하려면 을 사용 git push origin --delete test
합니다.
답변
의미 remotes/origin/test
는 당신이 test
원격 서버에서 라는 지점을 가지고 있다는 것 origin
입니다. 따라서 명령은
git push origin --delete test
답변
원점에서 분기를 삭제하는 바로 가기가 있습니다.
git push origin :<branch_name>
어느 것과 똑같습니다 git push origin --delete <branch_name>
답변
- 원격 지점 목록을 얻습니다
git fetch # synchronize with the server
git branch --remote # list remote branches
- 원격 브랜치 목록을 가져와야합니다.
origin/HEAD -> origin/master
origin/develop
origin/master
origin/deleteme
- 이제 분기를 삭제할 수 있습니다.
git push origin --delete deleteme
답변
git push origin --delete yourBranch
답변
원격 브랜치가 remotes / origin / test 인 경우 두 가지 방법을 사용할 수 있습니다.
git push origin --delete test
과
git branch -D -r origin/test
답변
나는 결국 약간의 조정 으로 찌름 으로 해결책을 따랐다 . 내 단계는
– git fetch --prune
;
– git branch -a
다음을 인쇄
master
branch
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/branch
(제거 할 원격 분기)
– git push origin --delete branch
.
여기서 제거 할 브랜치는 이름이 remotes/origin/branch
아니라 단순히 branch
입니다. 그리고 가지가 제거됩니다.