Version control 什么';我的.hg文件有什么问题?(未忽略任何内容)
my.hgignore文件的内容如下所示,未忽略任何内容:Version control 什么';我的.hg文件有什么问题?(未忽略任何内容),version-control,mercurial,bitbucket,hgignore,Version Control,Mercurial,Bitbucket,Hgignore,my.hgignore文件的内容如下所示,未忽略任何内容: ^nbproject$ ^.htaccess$ ^my.conf$ /media/images/captcha/.*\.jpg$ 我试图将文件放在主项目存储库文件夹和工作目录中 怎么了?请提供帮助。将此行添加到文件顶部: syntax: regexp 至于.hgignore文件应该放在哪里,根据 .hgignore文件位于工作区中 目录,位于.hg文件夹旁边 您不需要语法:regexp——这是默认值 您确实需要将文件放在.hg文件夹
^nbproject$
^.htaccess$
^my.conf$
/media/images/captcha/.*\.jpg$
我试图将文件放在主项目存储库文件夹和工作目录中
怎么了?请提供帮助。将此行添加到文件顶部:
syntax: regexp
至于.hgignore文件应该放在哪里,根据
.hgignore文件位于工作区中
目录,位于.hg文件夹旁边
您不需要
语法:regexp
——这是默认值
您确实需要将文件放在.hg
文件夹上方的目录中,因此布局如下所示:
--yourepo
|
+--- .hgignore
+--- .htaccess
+--- .hg
您还需要转义文件路径中的所有点。试试这个:
^nbproject$
^\.htaccess$
^my.conf$
/media/images/captcha/.*\.jpg$
您确实需要确保尚未添加和/或提交文件。.hgignore
文件不会覆盖add,它只会阻止您使用通配符添加内容,并阻止您在.hgstatus中看到被忽略(未添加)的内容。如果您已经添加了这些文件,则需要在忽略它们之前将它们忘记
如果没有任何效果,请尝试以下方法:
hg status --all
然后发布输出。对于这样的基本忽略,您可能应该使用更简单的glob语法(使用显式的
语法:glob
指令)。另外,从技术上讲,您应该转义“.”,因为它们是特殊的regexp字符,但您很幸运,因为“.”恰好匹配任何字符,包括文字“.”。然而,这样的混淆只是强调了我关于使用更简单的glob机制的观点。还要注意,hg
不能处理.hgignore
文件,如果它以UTF-8 BOM开头。由于这是Windows记事本的默认行为,您可能需要注意这一点。@Alex:我删除了与git相关的标记,因为它们似乎不适用于此处。他说的是“主项目存储库文件夹”,他的意思是.hg
。第二次他是正确的,它应该在“工作目录”中,即.hg
之上的级别。谢谢,Ry4an。我总是将.hgignore
放在与.hg
目录相同的级别。我添加了对文档的引用。是的,在同一级别是正确的。他在.hg
中询问了一些问题,但这些问题不起作用。感谢你的帖子,我了解到“使用的默认语法是Python/Perl风格的正则表达式。”——+1因为在2年多之后,这个答案再次证明是有用的:)我假设这就是为什么在我将windows控制台中的一些代码行粘贴到Scite中后,一个特定于用户的忽略文件在我身上出现的原因。太棒了。