两个不同文件之间的git diff

时间:2013-05-22 03:43:49

标签: git diff

HEAD(最新提交)中,我有一个名为foo的文件。在我当前的工作树中,我将其重命名为bar,并对其进行了编辑。

我希望git diff中的foo HEAD和当前工作树中的bar

4 个答案:

答案 0 :(得分:90)

https://www.kernel.org/pub/software/scm/git/docs/git-diff.html

上查看--find-renames上的git-diff选项

或明确指定路径:

git diff HEAD:full/path/to/foo full/path/to/bar

(信用来自Git: How to diff two different files in different branches?

的twaggs

答案 1 :(得分:8)

我相信您要使用--no-index

git diff [<options>] --no-index [--] <path> <path>

如git手册中所述:

  

此形式用于比较文件系统上给定的两个路径。您可以   在工作树中运行命令时,忽略选项--no-index   由Git和至少一条路径指向外部控制   工作树,或者在外部运行命令时   由Git控制。

答案 2 :(得分:4)

如果您正在使用togise git,您可以右键单击文件并通过以下方式git diff: 右键单击第一个文件并通过tortoisegit子菜单选择&#34; Diff later&#34; 然后在第二个文件上你也可以右键单击它,转到tortoisegit子菜单,然后选择&#34; Diff with yourfilenamehere.txt&#34;

答案 3 :(得分:-6)

使用PhpStorm,我只需复制prev commit代码并将其与当前版本进行比较,使用内置&#34;与剪贴板进行比较&#34;工具。