我的中有以下内容.hgignore
file:
syntax: glob
obj/*
bin/*
*.suo
*.user
*.ncb
如果我注释掉*.
过滤器,过滤效果很好,过滤掉了bin
and obj
文件夹,但是,如果我保留这些过滤器,我会收到以下错误:
abort: c:\temp\.hgignore: invalid pattern (relre): *.suo
注意:该文件以UTF-8编码
来自 Mercurial 的错误消息告诉我们,您的syntax: glob
Mercurial 不读取该行。忽略文件中的模式默认为正则表达式,并且*.suo
确实是一个无效的正则表达式(正则表达式不能以*
).
由于这是在 Windows 上,并且文件是 UTF-8 编码的,那么唯一合理的解释是,有一些东西使 Mercurial 忽略syntax: glob
线。一个UTF-8 BOM http://en.wikipedia.org/wiki/Byte_order_mark#UTF-8就是这样一个“东西”!字节顺序标记是插入到 UTF-16 编码文件中的小签名,用于表示文件的字节顺序。对于 UTF-8 编码的文件来说,不需要也不建议这样做,但 Windows 编辑器无论如何都会插入它们。
要解决此问题,请在记事本中打开文件并选择“另存为”。然后选择 ANSI 作为编码。你的.hgignore
文件是纯 ASCII,因此这与不带 BOM 的 UTF-8 效果相同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)