2011-01-07 18 views
2

我不小心創建了一個名爲「遙控器/產地/遙控器/產地/ aclark」分支,並不能刪除它:刪除實在太差了名爲git的分支

的Git分支-d遙控器/產地/遙控器/產地/ aclark

混帳說:

錯誤:分公司的「遙控器/產地/遙控器/產地/ aclark找不到。

我在這裏嘗試了一些建議:Deleting a badly named git branch,但它們更偏向於以「 - 」開頭的錯誤分支名稱。

有什麼方法可以讓最終用戶刪除這個分支,或者我需要一個git admin? (有問題的分支生活在有意義的地方)。

感謝

亞歷

+0

類似於http://stackoverflow.com/questions/3810242/cleaning-remote-git-branches – 2011-01-07 15:38:09

回答

11

這是一個遠程的分支,所以你需要刪除它的服務器上。要做到這一點,你需要推空引用。

$ git push origin :remotes/origin/aclark 

注意,git push命令的語法是:

$ git push <remote> <local-reference>:<remote-branch-name> 
的情況下

所以,我們正在推動一個空引用,遠程的名字是我們想要摧毀分支的名稱。在你的情況下,分支名稱「remote/remote/remotes/origin/aclark」表示它是遠程服務器名稱「origin」上的遠程分支,遠端服務器上的名稱是「remote/origin/aclark」。

的其他客戶將需要發出以下命令有分支從本地資源庫中刪除(如果他們拿來當無效分支存在):

$ git fetch origin 
$ git remote prune origin 

更多信息可以在git-push被發現git-remote手冊。

+0

謝謝!這纔剛剛開始沉入其中。事實上,git push origin:remotes/origin/aclark做到了這一點。再次感謝! – aclark 2011-01-07 19:31:57