2010-09-28 108 views
2

我提出了一個SVN回購協議Git和可能是由於一些clonings的,我現在只剩下了一堆樹枝,看起來像清洗遠程的Git分支

BranchA 
origin/BranchA 
remotes/BranchA 
remotes/origin/BranchA 
remotes/origin/origin/BranchA 

的,即同一分支上市多次。我怎樣才能清理這個爛攤子。有超過50個分支,其中一些根本不需要,剩下的只有一次,我會很高興。

編輯:

這是遠程Git秀起源看起來像某種情形:

Remote branches: 
BranchA tracked 
origin/BranchA tracked 

...

Local branches configured for 'git pull': 
origin/BranchA merges with remote BranchA 

...

Local refs configured for 'git push': 
BranchA pushes to BranchA (up to date) 
origin/BranchA pushes to origin/BranchA (up to date) 

回答

5

您可以通過刪除這些分支使用這個命令:

git push origin :branch_name 

要刪除BranchA分支:

git push origin :BranchA 

要刪除origin/BranchA分支:

git push origin :origin/BranchA 

另外,您可以使用git branch -dr BranchA等。

刪除除BranchAorigin/BranchA以外的每個分支。您可能已經刪除了origin遙控器,在這種情況下,您應該刪除remotes遙控器,並將其重新添加爲origin遙控器。

+0

我應該刪除哪些?假設我想保留BranchA的一個,它是遙控器/ BranchA嗎? – Makis 2010-09-28 06:42:14

+0

@Makis:更新回答 – 2010-09-28 06:48:32

+0

謝謝,我會做到這一點! – Makis 2010-09-28 07:38:44