Git blame显示对文件所做的更改。我想知道该更改何时合并到我们的实时分支。
我可能会使用图形客户端跟踪它,但还有很多其他提交正在进行中。提交不是在实时分支的前几次合并中。
答案 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
分支环境。在这种情况下,如果您想知道“何时”您执行了master
或pull
(是昨天?上周?),您可以使用merge
,如下所示:
命令:
reflog
输出:
git reflog show --date=default