什么应用补丁时,“1行添加空白错误”是什么意思?(What does “1 line adds wh

2019-07-31 13:03发布

我编辑克隆远程仓库的一些降价文件,并想测试创建和应用补丁,从一个分支到另一个。 然而,每次我做任何改变在任何时候,我是否会在下面的消息git apply

0001-b.patch:16: trailing whitespace.
warning: 1 line adds whitespace errors.

(这是发生在我的Mac,我不知道原来的代码创建地方。)

什么是警告信息的意思,并且我需要照顾?

Answer 1:

你并不需要关心。

警告颁布的文本文件洁净度的标准对于空白,那种很多程序员往往关心的事情。 由于手动解释说:

什么被认为是空白的错误是由core.whitespace配置控制。 默认情况下,尾部空格(包括只包括空白字符的线)和空间字符后面紧跟一个制表符内的线的初始缩进被认为是空白错误。

默认情况下,命令输出的警告信息,但适用的补丁。

因此,“错误”是指该变化引入了尾随空白,一个只有空白行,或先于一个选项卡的空间。 比其他的事实,没有什么错误有关的变化,它会干净并正确运用。 换句话说,如果你不关心的“不正确”的空白,随意忽略警告或关闭它git config apply.whitespace nowarn



Answer 2:

当你可以合法关心的一种情况是,当你想“老” whitespase错误(你可能要保持遗留原因)和“新的”空白错误(要避免)之间进行区分。

为此,Git的2.5+(Q2 2015)将提出空白检测更具体的选项。

见提交0e383e1 , 0ad782f和d55ef3e [2015年5月26日]通过JUNIOÇ滨野( gitster ) 。
(通过合并JUNIO在提交709cd91 ,2015年6月11日)

diff.c--ws-error-highlight=<kind>选项

传统上,我们只关心在新的生产线引入了空白破损。
有些人要画上老线路空白破损了。 当他们看到一个新行一个空白破裂,他们可以当场同一种空白破损对相应的旧线,想要说“啊,那些破损是有,但他们从原来的被继承了,所以让我们不要碰他们现在。”

介绍--ws-error-highlight=<kind>选项,让他们传递的逗号分隔的列表oldnew ,和context来指定哪些线路以突出显示空白错误。

该文档现在包括 :

--ws-error-highlight=<kind>

突出显示由指定的行空白错误<kind>在由指定的颜色color.diff.whitespace
<kind>是的逗号分隔的列表oldnewcontext
如果没有给出该选项,仅在空白错误new线突出。

例如--ws-error-highlight=new,old的亮点都删除,并添加行的空白错误。
all可作为短手old,new,context

例如,老提交了一个空白的错误( bbb ),但你可以专注于新的错误只(在年底still bbbccc ):

(试验后进行t/t4015-diff-whitespace.sh



Answer 3:

用视觉图像的空白错误显示在这里。

http://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project#Commit-Guidelines



Answer 4:

由于符合begining TAB的istead SPACE 。 去补丁文件,并替换TABSPACE 。 例如对从补丁文件类型的X线+ vim中除去空间和不删除符号+和插入上EQIV空间(CTRL)到原始大小。



文章来源: What does “1 line adds whitespace errors” mean when applying a patch?