如何在git中找到commitId的分支?

时间:2012-11-27 22:28:06

标签: git

假设我有一个提交ID“0678dd19c498ede50e7714505eb5af3a5​​494beef” 我尝试了“git log”命令,打印,

$git log --full-history   1c57338cd62ee1a83df57d2c37ce1f3fa17bee17
commit 1c57338cd62ee1a83df57d2c37ce1f3fa17bee17
Author: blah@blah.com
Date:   Thu Feb 3 15:39:33 2011 -0800

Updated ejo syntax

commit 8fb7a6b3e44a020e4e495fd1c9a9976c8675c339
Author: blah@blah.com
Date:   Thu Feb 3 14:49:19 2011 -0800

Added a sample controller

commit 628788eb81c365a88ab435ffa62978077065f72c
Author: blah@blah.com
Date:   Wed Feb 2 11:33:41 2011 -0800

Test checkin

无论如何打印进行此提交的分支?

2 个答案:

答案 0 :(得分:9)

您想要的命令是

git branch --contains <commit>

请注意,提交可能包含在多个分支中。

答案 1 :(得分:0)

git log手册页中挖掘了一下之后,我想出了这个,我觉得它会起作用:

git log --all --pretty=oneline --source --since=yesterday

这将列出自昨天以来添加的任何分支上的所有提交,以及提交所在分支的名称。在存在合并和/或新分支的情况下,您可能会遇到一些奇怪的现象,并且您可能希望将输出传递给类似awk '{print $2}' | sort -u的内容以消除重复项。