我正在尝试理解git时空中相距一段距离的两个git提交之间的关系。它们都触及相同的代码片段,但是在其中一个代码的某个位置,代码被移动到另一个文件。
我认为我想要做的是:查看显示“关键”提交的简化git log
。最初,这将是修订版A,修订版B及其共同祖先。但是,当我确定其他相关提交时,我也希望能够以类似git log --graph
格式的方式查看这些提交。
到目前为止的问题:
git log --all A...B
从B开始,显示了许多提交,我不确定它显示的最终提交的重要性是什么。 (这不是A)--simplify-by-decoration
在其他情况下有帮助,但不在此处(例如,它没有显示我指定的实际提交)。对不起,如果不清楚的话。在你看到它之前解释那些有用的信息并不容易。
编辑
好的,我会试着拼出来。调用目标提交a123和b234,c345另一个'密钥提交'我已经识别,d456是共同的祖先:
git log <something> a123 b234 c345
d456
| |
| c345 <description, diff of key file>
| |
| b234 <...>
|
a123
答案 0 :(得分:1)
听起来你正在寻找镐(git log -S"code to search"
)或责备(git blame -C file
)。
另请参阅:http://jfire.io/blog/2012/03/07/code-archaeology-with-git/