具有两个不同父提交的两个提交之间的差异

时间:2016-08-09 07:28:07

标签: git

当我对我的代码运行测试时,我总是使用git(使用stash create)获取代码的快照,并将提交ID附加到测试中(确保将其放在reflog上以防止它成为垃圾集)。这样我以后可以轻松地检查确切的代码导致该测试输出。

但是,我经常想将旧代码与我当前版本的代码进行比较。问题是我的当前版本的代码已在主分支上重新定义,因此git diff将显示数百个提交的组合差异。我目前所做的是两个git show然后是一个普通(非git)差异,但这有一个巨大的缺点,即对于每个具有不同行号的行,这个行号被视为差异。

当第二次提交被重新定位时,是否有一种简单的方法可以在两次提交之间进行差异?所以基本上,我正在寻找类似于在内部重新定义第一个提交,显示差异,然后摆脱该提交的内部重定义版本的东西。当然,如果rebase失败了,那么就是这样,但在大多数情况下,rebase只对我有用,所以在大多数情况下这仍然有用。

我想我自己可以写这个,但似乎这是一个常见的问题,所以我想知道这样的事情是否已经存在?

1 个答案:

答案 0 :(得分:0)

我不知道如何在git中直接执行此操作。

但是按照你的建议,通过编写一个小小的脚本来做幕后操作" rebase,应该工作得很好。

顺便说一下,我只想放置一个标签,而不是使用藏匿处,这里。

最后,您可能希望更新此问题的标题以提及rebase