我需要以编程方式为 Web 用户界面生成全上下文 git diff。
用于生成全上下文差异的 CLI 包含在问题中:
普遍的答案类似于 git diff -U99999
使用具有高得离谱的阈值(例如 999,999)的 -U/--unified
选项,执行 git diff -U999999
:
- 让我怀疑性能会受到影响
- 更糟糕的是,如果我的文件大于 100 万行,这就是正确性问题
是否有 -U 选项来显示整个文件?
最佳答案
如果您只是使用带有 -U
的大数字,您可以选择大数字作为您的应用程序无法处理显示如此大的点文件(差异)。
it's a correctness issue if my file is larger than 1M lines
为了解决这个问题,您可以检查多个 @@ ... @@
行的输出以确定它是否完整——这可以让您避免默默地给出错误的数字。
关于git - 对于 "git diff"是否有 -U<infinity> 选项来显示整个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28727424/