我有一堆远程git分支:
remotes/origin/<branchname>
等......
我知道其中大部分都可能被删除。
答案 0 :(得分:3)
git branch -r --merged master
能做你想做的吗?
答案 1 :(得分:1)
获取此信息的一种方法是:
git branch -vv
这将列出每个分支是最新的,提前还是后退,但它是专为人类阅读而设计的,因此不容易解析进一步的脚本。如果你需要采取这条路线,可能会有更好的方法。
查看其中一个GUI可以直观地告诉您哪些分支未合并,但是根据您拥有的分支数量,这可能会很乏味。
编辑:另一种选择是:
git show-branch --independent | xargs git name-rev
这基本上显示了哪些分支无法从任何其他分支到达,但也可能在列表中包含master
,因此您可能需要稍微修剪输出...
答案 2 :(得分:0)
这个git log
命令用于查看分支如何相互关联。
log --oneline --decorate = short --graph --all --simplify-by-decoration
并将未修饰的提交添加到上面,只需删除--simplify-by-decoration
log --oneline --decorate = short --graph --all
此外,不是直接回答您的问题,而是与查看提交需要注意的内容相关,此版本仅显示未通过推送的romote跟踪分支上的提交。
log --oneline --decorate = short --graph --all --branches --not --remotes
答案 3 :(得分:0)
我的第一选择是尝试使用git branch -d
删除它(小写d)。如果分支尚未完全合并,那将失败。