Svn 如何让Mercurial忽略除*.cs文件以外的所有内容?

Svn 如何让Mercurial忽略除*.cs文件以外的所有内容?,svn,version-control,mercurial,tortoisehg,hgignore,Svn,Version Control,Mercurial,Tortoisehg,Hgignore,我启动了一个项目,并将其添加到Mercurial中。但是我只想在版本控制下获取*.cs文件。所以我必须添加bin,obj,sln,suo,\u resharper文件夹等来忽略模式 如何让Hg只监视某些类型的文件,如白名单?如何在Subversion中执行此操作?将名为.hgignore的文件添加到存储库中,其中包含这些内容 syntax: regexp ^\.cs Subversion不允许使用正则表达式忽略文件,只允许使用正则表达式的子集来匹配文件/目录名。我不知道如何使ignore文件

我启动了一个项目,并将其添加到Mercurial中。但是我只想在版本控制下获取
*.cs
文件。所以我必须添加
bin
obj
sln
suo
\u resharper
文件夹等来忽略模式


如何让Hg只监视某些类型的文件,如白名单?如何在Subversion中执行此操作?

将名为
.hgignore
的文件添加到存储库中,其中包含这些内容

syntax: regexp

^\.cs
Subversion不允许使用正则表达式忽略文件,只允许使用正则表达式的子集来匹配文件/目录名。我不知道如何使ignore文件不以.cs结尾,所以我在网上搜索并说:

小心使用:)


编辑:Martin Geisler是对的,我错了,regexp语法是错的。我道歉。有正确的概念,但没有元字符…:(

只要在遇到扩展名时将其添加到
.hgignore
文件中即可:

syntax: glob
*.bin
*.obj

等等。这不是很多工作,它向世界其他地方证明了你认为什么样的文件对于修改控制是不重要的。< /P> 您甚至可以设置全局忽略文件,请参阅

尝试使用负前瞻正则表达式和其他巫毒来颠倒
.hgignore
不是一个好主意(在我看来)。这几乎肯定不会起作用,只会导致混乱。这是因为
hg
将给定路径名的所有前缀与

a/b/c.cs
将被忽略,如果

a/b/c.cs
a/b
a

.hgignore
文件中的规则匹配。特别是,这意味着您不能使用负前瞻表达式使
a/b/c.cs
不被忽略-规则将匹配
a/b
a

,与Martin Geisler(),请注意,问题不是技术困难,而是支持:

这是一个古老而反复出现的特性请求,我很好地拒绝了 在这个bug创建之前,我已经编写并支持了一些 包括/排除文件语法,并决定我宁愿说“不,你 不能做到“一次到1%的用户”而不是“不,你看错了文档” 重复向20%的用户提供服务。-Matt Mackall(Mercurial的开发人员)


Mercurial或Subversion或两者都有?只有Mercurial是可以的,如果知道的话。csregexp将使
hg
忽略存储库根目录中名为
.cs
的文件。它不会使
hg
忽略所有不匹配的
*.cs
(全局模式).那么你是说没有否定运算符吗?迈克:是的,很遗憾。请看这个问题,如果你非常感兴趣,可以在这里发表评论。
a/b/c.cs
a/b
a