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