【发布时间】:2015-01-31 08:35:35
【问题描述】:
我想自动清理远程分支。我希望能够检查一个分支是否已经合并到 master 中。最初,我的计划是使用 git merge-base 来查看最后一次常见的提交。
但是,事实证明,当我们将所有分支合并到 master 时,我们会压缩它们。由于这会创建一个新的提交哈希,我无法找到 master 和我的分支之间的共同提交。
如果我们在合并时将它们全部压缩,我该如何确定分支是否已合并?
提前致谢!
【问题讨论】:
-
不完全可靠,但
git log --grep="merge $BRANCH"或其他东西可能会起作用,如果您在进行壁球合并时将分支名称放在提交消息中。 -
不幸的是,当我们进行壁球合并时,我们并不总是将分支的名称放在提交消息中。
-
通过挤压你有什么收获吗?你总是可以先通过 rebase 压缩,然后进行正常的合并。
-
不幸的是,这只是既定的工作流程。
-
有 2 种内置方式可以使用 Git 跟踪历史记录 - 一种是通过可达性,另一种是通过 patch-id。不幸的是,您的工作流程破坏了您使用其中任何一种技术的能力。
标签: git github merge branch squash