1

我试图了解在 git 时空中相距一定距离的两个 git 提交之间的关系。他们都接触了同一段代码,但是其中一个的代码被移到了不同​​的文件中。

我想我想做的是:查看git log显示“关键”提交的简化版。最初,这将是修订版 A、修订版 B 以及它们的共同祖先。但是,当我确定其他相关提交时,我也希望能够以类似git log --graph格式的方式查看这些提交。

到目前为止的问题:

  1. git log --all A...B从 B 开始,显示了许多提交,我不确定它显示的最终提交的意义是什么。(不是A)
  2. 我想不出任何方法来过滤掉大量的提交。--simplify-by-decoration在其他情况下有帮助,但在这里没有帮助(例如,它不显示我指定的实际提交)。

对不起,如果这不清楚。在你看到之前,要解释那种有用的信息并不容易。

编辑

好的,我会尝试拼写出来。调用目标提交 a123 和 b234,c345 是我确定的另一个“关键提交”,d456 是共同祖先:

git log <something>  a123 b234 c345

d456
| |
| c345 <description, diff of key file>
| |
| b234 <...>
|
a123
4

1 回答 1

1

听起来您正在寻找镐(git log -S"code to search")或责备(git blame -C file)。

另见:http: //jfire.io/blog/2012/03/07/code-archaeology-with-git/

于 2012-05-24T00:15:31.163 回答