Subversion 有选项diff3-has-program-arg
### 如果您的 'diff3' 程序,请将 diff3-has-program-arg 设置为 'yes' ### 接受“--diff-program”选项。 diff3-has-program-arg = [是| 不 ]
我diff3
确实支持该--diff-program
选项,但我看不到在哪里配置要调用的程序。
- 我该怎么做呢?
- 我为什么要这样做?
Subversion 有选项diff3-has-program-arg
### 如果您的 'diff3' 程序,请将 diff3-has-program-arg 设置为 'yes' ### 接受“--diff-program”选项。 diff3-has-program-arg = [是| 不 ]
我diff3
确实支持该--diff-program
选项,但我看不到在哪里配置要调用的程序。
diff3-has-program-arg
看起来很粗糙。该选项在 中被引用libsvn_subr/io.c
,但使用该选项的代码被SVN_DIFF3_HAS_DIFF_PROGRAM_ARG
ifdef 禁用。
在此版本中删除了设置该宏的配置逻辑。
从svn dev list 上的一封旧邮件来看,HAS_DIFF_PROGRAM_ARG 的最初需求似乎是--diff-program
在实现 subversion 的内部 diff 支持之前同时支持需要该选项的 diff 版本和拒绝它的版本。
---经过一些测试后编辑---
该--diff-program=value
选项主要diff3
针对使用哪两个文件差异检查程序。 diff3
然后将从两个文件差异检查程序的几次运行中获取输出,并将它们交错成三路差异输出。
有效地使用告诉diff3 --diff-program=diff a b c
作为双向文件差异程序使用。subversion 配置参数是 subversion在调用 3way diff 程序时添加参数的标志。我敢打赌,在某个地方还有另一个选项可以让您设置双向差异工具。diff3
diff
diff3-has-program-arg
--diff-program=xxx
我猜那个灰胡子并没有拉我的腿(那个时候),但当他拉的时候更有趣。只要问任何编写过 bash shell 炸弹的人,他们都会同意(在痛苦结束后)。
--- 原帖如下---
来自旧的diff3 页面(感谢 GNU)。
--diff-program=program
Use the compatible comparison program program to compare files instead of diff.
这激活了 diff 使用外部比较程序(而不是内部文本匹配器)的能力。我从未见过它被使用过,但一位老灰胡子曾经向我解释说,它的目的是比文本比较程序更好,比如将不同“C”输入之间的空白标准化的程序,这样 diff 就不会失去对齐由于制表符/空格转换问题(等)。
我很想知道这是否属实,或者只是一个对当时相当“绿色”的人讲的一个奇特的神话。