列出可以安全删除的git分支。

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (17)

如果你做了git branch -d branchname,如果它引用历史记录中先前的提交,或者告诉需要使用-D否则。我经常创建分支,这些分支后来被推送到Master,因此可以通过这个标准删除。是否有一种简单的方法可以列出所有指向主服务器先前提交的分支,也就是说,git不会介意仅用-d选择?如果它同时适用于所有的分支,而不仅仅是大师,那就奖励积分。

我有82个本地分支机构,我知道现在已经可以安全地删除其中相当多的分支机构了,但我不想花时间去检查每一个分支机构。

提问于
用户回答回答于

试着:

$ git checkout master # or whatever branch you might compare against ...
$ git branch --no-merged
$ git branch --merged

为了向每个分支展示这一点,可以这样做:

示例:

o <--- experimental
|
o
|
o <--- next
|
o
|
o <--- master
|
o----o <--- broken
|
o
|


$ for branch in `git branch --no-color --verbose | \
sed -e 's/*//' | awk '{print $1}'`; \
do echo "[$branch]"; git checkout -q $branch; git branch --merged; done

[broken]
* broken
[master]
* master
[next]
master
* next
[experimental]
master
next
* experimental
用户回答回答于

git show-branch是一个很少为人所知但非常有用的工具,它可以直观地显示每个分支所特有的提交。一开始很难破译,但是一旦你理解了输出,它就很有用了。

扫码关注云+社区