从Git合并提交中检测合并的分支

时间:2017-11-27 12:43:20

标签: git merge githooks git-commit

我想知道合并提交中的合并分支。

所以,我决定自动编写一个合并消息,当合并发生时,使用提交钩子包含合并分支。

然而,这有一个问题。我只是看到一个提交对象时,我无法知道合并了哪些分支。

有没有一种很好的方法可以在看到提交对象时知道哪些分支被合并?

1 个答案:

答案 0 :(得分:0)

您可以使用以下命令获取合并提交的父提交:

git rev-list --parents -n 1 <commit>

正如我之前的评论中所述,您无法获取分支名称,只能获取提交。然后从两个提交中,您可以获得fork point:

git merge-base <commit> <commit>

奖励:提交的顺序很重要。左提交是您执行合并的分支,右提交是您合并的提交。例如,如果您在主分支中并执行git merge --no-ff develop,则左提交将是主提交而正确提交。