Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在svn:ignore值中指定负模式_Svn_Design Patterns_Svnignore - Fatal编程技术网

如何在svn:ignore值中指定负模式

如何在svn:ignore值中指定负模式,svn,design-patterns,svnignore,Svn,Design Patterns,Svnignore,我正在使用SVN作为我的VCS。 我有一个保存用户上传文件的文件夹。显然,我不需要版本控制。但是,文件夹中只有一个文件,我需要.htaccess 它已经在版本控制下,但如何指定需要该文件夹中除.htaccess之外的所有其他文件 我遇到过这篇文章:,但给出的方法对我来说有点神秘,我无法让它工作 提前谢谢 其思想是创建一个与除.htaccess之外的所有文件匹配的文件模式。在本文中,他们使用字符类来创建这样的模式 例如 匹配第一个字母不是a的任何文件。如果您像这样指定完整的.htaccess文件名

我正在使用SVN作为我的VCS。 我有一个保存用户上传文件的文件夹。显然,我不需要版本控制。但是,文件夹中只有一个文件,我需要.htaccess

它已经在版本控制下,但如何指定需要该文件夹中除.htaccess之外的所有其他文件

我遇到过这篇文章:,但给出的方法对我来说有点神秘,我无法让它工作


提前谢谢

其思想是创建一个与除.htaccess之外的所有文件匹配的文件模式。在本文中,他们使用字符类来创建这样的模式

例如

匹配第一个字母不是a的任何文件。如果您像这样指定完整的.htaccess文件名,这将不起作用,但以下可能适用于您:

[^.]*

这将忽略任何不以点开头的文件。

其思想是创建一个与除.htaccess之外的所有文件匹配的文件模式。在本文中,他们使用字符类来创建这样的模式

例如

匹配第一个字母不是a的任何文件。如果您像这样指定完整的.htaccess文件名,这将不起作用,但以下可能适用于您:

[^.]*

这将忽略任何不以点开头的文件。

Subversion不会将
svn:ignore
中的模式应用于已版本化的文件。因此,在您的示例中,模式
*
应该可以。只要忽略所有未版本化的文件。

Subversion不会将
svn:ignore
中的模式应用于已版本化的文件。因此,在您的示例中,模式
*
应该可以。忽略所有未版本的内容。

我有点困惑。如果这些文件不在版本控制中,它们会导致哪些问题需要忽略?(我自己经常这样做,没有使用ignore。也许我遗漏了什么。)如果我有一个包含大量文件的很深的文件夹树,那么不需要的文件就会妨碍使用SVN客户端。这是一个小障碍。主要的一点是,我不能确定其他开发人员是否会错误地提交他们的文件。你看。大多数人不会注意,但是一个开发人员在这方面失败就足够了。我正在使用SmartSVN和命令行svn客户端。在这两种情况下,我都有一堆分散的未版本文件。在SmartSVN中,我在提交对话框中看到了它们,在命令行客户端中,我在发出“svn状态”时看到了它们,我有点困惑。如果这些文件不在版本控制中,它们会导致哪些问题需要忽略?(我自己经常这样做,没有使用ignore。也许我遗漏了什么。)如果我有一个包含大量文件的很深的文件夹树,那么不需要的文件就会妨碍使用SVN客户端。这是一个小障碍。主要的一点是,我不能确定其他开发人员是否会错误地提交他们的文件。你看。大多数人不会注意,但是一个开发人员在这方面失败就足够了。我正在使用SmartSVN和命令行svn客户端。在这两种情况下,我都有一堆分散的未版本文件。在SmartSVN中,我在“提交”对话框中看到了它们,在命令行客户端中,我在发出“svn状态”时看到了它们,但它们使用的语法略有不同。。。我应该用你的语法还是他们的?我不明白有什么不同。他们每行都有一个图案,这很好。它们匹配扩展名(即文件名的结尾),因此它们有
*foo
,其中星号匹配任何内容。如果要匹配以点开头的文件名,则需要
*
。不以点开头的文件名将是
[^.]*
。也就是说,不是一个点,后面跟着任何东西。“不同的语法”我指的是否定字符。使用[!x]时,虽然使用[^a],但它们使用的语法略有不同。。。我应该用你的语法还是他们的?我不明白有什么不同。他们每行都有一个图案,这很好。它们匹配扩展名(即文件名的结尾),因此它们有
*foo
,其中星号匹配任何内容。如果要匹配以点开头的文件名,则需要
*
。不以点开头的文件名将是
[^.]*
。也就是说,不是一个点,后面跟着任何东西。“不同的语法”我指的是否定字符。当您使用[^a]schot时,请使用[!x],谢谢您的提示!这对我目前的情况很有效,但仍然不能回答我的问题。肖特,谢谢你的提示!这对我目前的情况是有效的,但仍然不能回答我的问题