- 这取决于您是否可以使用
git diff
和diff
对于同一个文件?
简单地说,如果该文件位于 git repo 工作树中,那么您就可以git diff
用来显示该文件的更改(针对 git repo 引用的同一文件,如索引或 blob 对象)。
这与 ' diff
' 不同,后者比较文件(这意味着您需要两个文件,而在 git 存储库中使用时,不仅仅是 git diff 中的一个)
正如hvd在评论中指出的那样:
您可以git diff
在任何工作树之外使用并传递两个文件。
因此,您git diff
几乎可以在任何可以使用的情况下使用diff
.
反过来是不正确的
git diff --color-words --no-index file1 file2
- 格式之间有什么区别?
git diff
可以模拟任何差异格式(统一,原始,...)。
它也具有特定于 git 的格式 ( --summary
, --stat
, ...)
也可以看看:
Agit diff
将包含一个带有“相似性索引”的 git 标头。
每个 diff 块的大块显示与 diff -u 非常相似。
- 如果您无法交换命令(请参阅 1.),您如何将文件转换为其他格式,以便您可以将它们与其他命令一起使用?
您可以将 a 转换为git diff
原始格式,或使用 raw: 进行修补--patch-with-raw
。
反过来也是可能的:您可以将 diff 应用于 git repo。
- 如果您可以交换命令(请参阅 1.):甚至建议这样做吗?
如果您没有安装 git(请参阅前面的示例)
- 这两个命令创建的文件是否还有其他显着差异?
否:应用由 adiff
或 a生成的补丁的结果git diff
应该相同。