差异输出之间的差异使用;git add--patch";及;“文件合并”;

差异输出之间的差异使用;git add--patch";及;“文件合并”;,git,diff,Git,Diff,我正在尝试使用,我注意到它的diff与使用opendiff生成的diff不同 这是常见的吗?有不同的diff算法吗?我只是疯了吗 假设上面的回答是“是”,有没有办法强迫git使用opendiff算法 确实有不同的diff算法。(还有许多可能的差异会导致对文件进行完全相同的更改——这就是为什么git不存储更改,它只存储每次提交时树的状态的原因之一:)) 即使在git中,对于某些命令,您也可以在两种不同的diff算法之间进行选择-例如,尝试在某些C代码中移动函数,并比较以下命令的输出: git di

我正在尝试使用,我注意到它的diff与使用
opendiff
生成的diff不同

  • 这是常见的吗?有不同的diff算法吗?我只是疯了吗
  • 假设上面的回答是“是”,有没有办法强迫git使用opendiff算法

  • 确实有不同的diff算法。(还有许多可能的差异会导致对文件进行完全相同的更改——这就是为什么git不存储更改,它只存储每次提交时树的状态的原因之一:))

    即使在git中,对于某些命令,您也可以在两种不同的diff算法之间进行选择-例如,尝试在某些C代码中移动函数,并比较以下命令的输出:

    git diff
    
    。。。以及:

    git diff --patience
    
    后者通常更具可读性,尽管计算速度较慢

    我不确定opendiff使用的是什么算法,但也许它与

    不幸的是,我认为目前在git中不可能在
    git add-p
    中使用不同的diff算法,尽管我会发现这也非常有用。有一种方法可以添加该功能,但似乎作者还没有将其发送到上游