我的存储库中有一个由软件程序生成的文件。
该程序有时会重新排序该文件上的行,这并不重要,因为行顺序并不重要。问题是,当执行 git-diff 时,很难看出任何内容是否真正发生了变化。
无论如何,是否有执行不考虑行顺序的差异?或者,如果 git-diff 无法实现,您可能会想到任何 shell 命令?
Thanks!
在一天结束时,我会在提交之前手动运行此命令,以了解文件是否实际更改或只是行重新排序。也许我会为它设置一个 git hook。
diff -wB <(sort file.txt) <(git show HEAD:file.txt | sort -)
此命令将工作目录中的文件与分支上次提交中的文件进行比较,而不考虑行顺序。
就我而言,我使用-w
and -B
,忽略程序还添加的空格和行。从man diff
:
-w, --ignore-all-space
ignore all white space
-B, --ignore-blank-lines
ignore changes whose lines are all blank
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)