如何将提交合并到分支时找到

时间:2012-12-05 14:31:41

标签: git

Git blame显示对文件所做的更改。我想知道该更改何时合并到我们的实时分支。

我可能会使用图形客户端跟踪它,但还有很多其他提交正在进行中。提交不是在实时分支的前几次合并中。

3 个答案:

答案 0 :(得分:3)

git show <commit_hash>将为您提供有关提交的详细信息。

这样做

git rev-list <commit_hash>..<branch> --first-parent

git rev-list <commit_hash>..<branch> --ancestry-path

共同的最后一行将是您正在寻找的提交哈希。

您可以将它们存储在单独的文件中,然后执行sdiff以快速识别它。

答案 1 :(得分:1)

如果我理解正确,你想要的是:

git log --merges <interesting_hash>..<live_branch>

至少似乎在一次性合并情况下有效。不知道它将如何在持续集成场景中起作用,在这种情况下,两个分支之间可能发生了多次合并(尽管在这种情况下,至少它会缩小你需要查看的地方集合)...

答案 2 :(得分:0)

假设您的git流是这样的:您将经过测试的代码推送到pgrep -f rsync.*/data > /dev/null || rsync -avz --delete /data/ otherhost:/data/ pgrep -f rsync.*/www > /dev/null || rsync -avz --delete /var/www/ otherhost:/var/www/ (或master)分支,一旦准备就绪,您只需在生产中拉出production分支环境。在这种情况下,如果您想知道“何时”您执行了masterpull(是昨天?上周?),您可以使用merge,如下所示:

命令: reflog

输出:

git reflog show --date=default