我在系统范围的配置中有该文件(但它也可以包含在git config include.path="/path/to/defaultconfig"
我想重置以前设置的一些值中。
特别是,默认配置文件包含diff.external = git-diff-wrapper
,我想为某些用户停用它
我在系统范围的配置中有该文件(但它也可以包含在git config include.path="/path/to/defaultconfig"
我想重置以前设置的一些值中。
特别是,默认配置文件包含diff.external = git-diff-wrapper
,我想为某些用户停用它
如果它是系统范围的配置,则每个用户都可以覆盖他/她的全局和本地设置中的配置值。
但是没有简单的方法可以“停用”较低配置文件中的设置。
即使将其设置为""
通常也会产生意想不到的后果。2010 年 4 月讨论了这个话题。
例如,停用该send-email
选项:
诚然,在考虑了这一点之后,使用 no value to unset 是一个可怕的、可怕的 hack。
git-send-email
应该进行更正,不仅要检查配置或命令行选项是否有值,还要检查它是否正常(即非空,或者如果我们说这smtpuser = "0"
不是我们需要担心支持的事情,则简单地说是真的)。
这对于任何设置都是正确的:如果函数检测到和值(偶数) ,diff.c#run_diff_cmd()
它将尝试运行外部差异。diff.external
""
if (!strcmp(var, "diff.external"))
return git_config_string(&external_diff_cmd_cfg, var, value);
导致:
if (pgm) {
run_external_diff(pgm, name, other, one, two, xfrm_msg,
complete_rewrite);
return;
}
所以没有简单的方法来阻止系统范围的外部差异,除非确保这些用户引用不同的 git 系统安装路径(意味着不同的系统设置)。