2010-09-28 107 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