对不起,如果存在这个问题,我出奇无法找到它:/git的差异在同一分支的两个文件,同时提交
我怎么能执行相同的分支&同犯中的文件git diff
两者之间?
即git diff fileA.php fileB.php
(最好用易于阅读的颜色编码,该编码git
报价....或者类似的什么程序BeyondCompare呢!)
对不起,如果存在这个问题,我出奇无法找到它:/git的差异在同一分支的两个文件,同时提交
我怎么能执行相同的分支&同犯中的文件git diff
两者之间?
即git diff fileA.php fileB.php
(最好用易于阅读的颜色编码,该编码git
报价....或者类似的什么程序BeyondCompare呢!)
你不需要为Git的,只是使用diff fileA.php fileB.php
(或vimdiff如果你想并排比较)
如果你想在同一个目录中比较两个本地文件,只需使用diff。
diff fileA.php fileB.php
这并不回答原来的问题 – DylanYoung
http://stackoverflow.com/questions/6877238/what-is-the-windows-equivalent-of-the -diff-command – morewry
只使用常规差异。
diff -Nua fileA.php fileB.php
-1因为“你不能”不正确(请参阅:http://stackoverflow.com/a/13965200/968531) – NobodysNightmare
如果要比较的文件是在你的工作副本,你可以简单地使用diff
由他人如指出,但是,如果这些文件是在一些版本,你可以为每个文件
git diff <revision_1>:<file_1> <revision_2>:<file_2>
因为这里要注意:https://stackoverflow.com/a/3343506/1815446
在你的情况(指定两个文件相同的版本):
git diff <revisionX>:fileA.php <revisionX>:fileB.php
注意:A [revision](https://git-scm.com)/book/en/v2/Git-Tools-Revision-Selection#_revision_selection)可以是'HEAD〜2',SHA-1,分支名称等。 – ma11hew28
这对我来说只是比较来自两个不同目录的文件名:'git diff --name-only HEAD:dir1 HEAD:dir1_backup'在两个目录的'git add'之后工作。 –
要定期GNU的diff看起来更像是git的差异,我会建议这些参数:
diff -burN file_or_dir1 file_or_dir2
(其中-b
忽略空格,-u
统一差异,-r
递归,-N
对待丢失的文件,/dev/null
)。
它工作的很好,但仍然没有颜色和混帐式自动分页几乎不存在。如果你想解决这两个(我做的),安装colordiff
和使用它像这样:
colordiff -burN file_or_dir1 file_or_dir2 | less -R
这使输出接口,非常接近实际git diff
。
-1因为“你不能”不正确(请参阅:http://stackoverflow.com/a/13965200/968531) – NobodysNightmare
删除“你不能”,添加安装colordiff的说明,这可能是一个好的回答原来的问题。 – DylanYoung
如果你想在两个任意文件上使用git diff
,你可以使用git diff --no-index <file_a> <file_b>
。这两个文件不需要在git
中跟踪这个工作。
+1,因为它回答了初始问题(不管“你为什么要这样做”......可能有原因) – NobodysNightmare
+1 git diff比普通diff更可读。 – daboross
'--word-diff'突出显示单词的变化,而不仅仅是行 – user3148949
'vimdiff'为胜利!谢谢! –
这可能会起作用,但它不是git diff。这是一种完全不同的输出格式。 – daboross
这并不回答原问题 – DylanYoung