Cleaning remote Git branches

随声附和 提交于 2019-12-06 10:54:59

问题


I have moved an SVN repo to Git and probably due to a number of clonings, I'm now left with a bunch of branches that look like

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

i.e. the same branch is listed a number of times. How can I clean this mess up. There are > 50 branches, some are not needed at all, and for the rest I'd be happy with just having them once.

EDIT:

This is what git remote show origin looks like for a certain case:

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)

回答1:


You can remove these branches by using this command:

git push origin :branch_name

To remove the BranchA branch:

git push origin :BranchA

To remove the origin/BranchA branch:

git push origin :origin/BranchA

Alternatively you could use git branch -dr BranchA and so on.

Remove every branch except BranchA and origin/BranchA. You may have deleted the origin remote, in which case you should remove the remotes remote and re-add it as the origin remote.



来源:https://stackoverflow.com/questions/3810242/cleaning-remote-git-branches

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!