git空白问题 关于空格的冲突

git空白问题 关于空格的冲突,git,settings,whitespace,Git,Settings,Whitespace,空白对我来说是一种可怕的痛苦 在使用git时 git config apply.whitespace=strip 似乎增加了你发生冲突的几率(当你脱衣时) 不必要的空白,然后其他合作者看到 空白作为对其提交的更改?) 我已经尝试了一些其他的apply.whitespace配置 过去,也许其他配置解决了这个问题,或者 其他设置来处理空白,我只是没有来 跨越,但我还没有找到一个明确的方式去实现我的目标 我想静默地解决空白冲突: 我再也不想在空格上发生冲突了。如果另一个 提交者更改空白,或者我更改空

空白对我来说是一种可怕的痛苦 在使用git时

git config apply.whitespace=strip
似乎增加了你发生冲突的几率(当你脱衣时) 不必要的空白,然后其他合作者看到 空白作为对其提交的更改?)

我已经尝试了一些其他的
apply.whitespace
配置 过去,也许其他配置解决了这个问题,或者 其他设置来处理空白,我只是没有来 跨越,但我还没有找到一个明确的方式去实现我的目标

我想静默地解决空白冲突: 我再也不想在空格上发生冲突了。如果另一个 提交者更改空白,或者我更改空白,然后必须 和我自己的冲突合并,我真的不想知道。 如果有人将我的代码从K&R样式更改为一个真正的大括号样式 更改空白,我更喜欢git允许空白设置中的任何一个,而不是必须这样做 看看关于它的冲突。我只是不太关心空格,不想看到关于它的冲突

所以。。。有什么方法可以配置git来实现这一点吗

如果有什么不同的话,这是我的git版本和当前版本 配置:

似乎有点陈旧,特别是如果你认为:

  • 在中,“
    git apply--whitespace=fix
    ”未修复 残缺线
  • 在中,设置的“
    whitespace
    ”属性用于检测所有已知错误 但它告诉git忽略尾随的回车
您可以尝试使用Git1.6.4.1,而不是设置全局配置,而是在需要特殊空格句柄的文件上设置一个属性,如下所示

在给定目录中,创建一个
.gittributes
文件

* -whitespace
这将忽略任何“空白”错误

由于缺乏一致性,这并不能防止任何冲突,但这可能值得一试


该补丁是关于以下内容的测试:

仅忽略
t/tnnn-*.sh和
t/tnnn
子目录中的空格错误。
其他文件(如测试库)仍应检查


注意(Git 2.3.2+,2015年第1季度,作者Junio C Hamano aka)“
Git apply--whitespace=fix
”不再沉默:

git apply--whitespace=fix
”修复了公用程序中的空白错误 上下文行,但没有报告

当传入的修补程序在公共上下文行(即预期会找到且未被修补程序修改的行)中有空格错误时,“
apply--whitespace=fix
”除了修补程序更新的行上的空格错误外,还更正该行的空格错误。
然而,我们并没有统计并报告我们修复了这些行上的空白错误


如果要启用这些设置,则需要安排一天,通过运行脚本,或通过从将在保存时执行删除操作的编辑器中保存每个文件,使项目中的所有源代码统一删除其空白。然后,所有未来的提交都将由设置进行监控,因此所有提交都应该顺利进行

点头是的,我一直在ubuntu存储库中使用git二进制文件,但也许是时候让我更接近最新版本了,也许这会有助于解决这个问题。我还要看看.gittributes设置对这种情况有什么影响。'lright,我(很高兴)在ubuntu中为最新稳定版本的git添加了launchpad ppa,希望这能解决问题。升级似乎解决了我过去遇到的一些问题。@Karl:我再也找不到同一篇文章了,因此,我链接到一个Git补丁,它说明了相同的想法(为特定文件设置Git属性以忽略空白警告/错误)
* -whitespace
t/.gitattributes
t[0-9][0-9][0-9][0-9]-*.sh  -whitespace
t[0-9][0-9][0-9][0-9]/*     -whitespace