![](/img/trans.png)
[英]Clean remotes/origin/master branch after deleting remote repository
[英]Git deleting a remote branch that's not in remotes/origin
我有一個名為new_auth的遠程分支。 我想要一個新的遠程分支來跟蹤該遠程分支,所以我做了以下事情:
git-remote add -t new_auth -m new_auth pivot git@github.com:myco/my_project.git/my_project
現在,當我做一個git分支-a時,我看到:
* master
new_auth
remotes/origin/HEAD -> origin/master
remotes/origin/new_auth
remotes/pivot/HEAD -> pivot/new_auth
我想刪除這個遙控器/ pivot / HEAD - > pivot / new_auth。 我試過了:
git push pivot :new_auth
git branch -rd pivot/new_auth
git remote rm pivot
git remote rm pivot/new_auth
沒運氣。 有任何想法嗎?
您的remotes/pivot/HEAD
已創建,因為您為git remote add
提供了-m
選項(如果省略-m new_auth
該命令將不會自動創建-m new_auth
)。
克隆存儲庫時會創建類似的symref。 如果遠程倉庫有HEAD
REF / symref,你對它的克隆將最終refs/remotes/origin/HEAD
指向對應於遠程分支指向遠程跟蹤分支之一HEAD
在遠程存儲庫。
這些symrefs讓您只要使用遙控器上的名字指的是遠程的“默認分支”(例如pivot
“展開” 1〜 refs/remotes/pivot/HEAD
,它指向refs/remotes/pivot/new_auth
)。
您可以使用以下命令刪除symref:
git remote set-head pivot -d
1請參閱gitrevisions中指定修訂版的<refname>
條目(7) 。
總的來說,我並不清楚你想用git remote add
命令完成什么。 如果pivot
和origin
實際指向同一個遠程存儲庫(相同的“Git URL”),那么就不需要額外的遠程存儲庫。 如果您只想將origin/new_auth
作為本地new_auth
分支的“上游”分支,那么您可以安排
git branch --set-upstream new_auth origin/new_auth
(如果您已准備好推送,可以使用git push -u
完成此操作)。 一旦配置了上游分支,你就可以使用一個簡單的git pull
來自你的new_auth
簽出時自動從origin/new_auth
提取(你可能還想在git config push.default upstream
以便git push
只會推送到上游分支而不是推送本地和遠程存儲庫中存在的所有分支名稱)。
嘗試這個:
git push remotes/pivot/HEAD :new_auth
要么
git push remotes/pivot :new_auth
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.