如何使SVN忽略文件夹?

如何使SVN忽略文件夹?,svn,unix,ignore,Svn,Unix,Ignore,我想让SVN忽略我的wordpress目录中的所有内容。由于插件的自动更新等原因,这只会让我头疼 当我 svn propedit svn:ignore ./blog 它告诉我 svn:未设置任何环境变量svn_EDITOR、VISUAL或EDITOR,也未找到“EDITOR cmd”运行时配置选项 所以我 [phil@sessions www]$ export SVN_EDITOR=emacs [phil@sessions www]$ svn propedit svn:ignore ./blo

我想让SVN忽略我的wordpress目录中的所有内容。由于插件的自动更新等原因,这只会让我头疼

当我

svn propedit svn:ignore ./blog
它告诉我

svn:未设置任何环境变量svn_EDITOR、VISUAL或EDITOR,也未找到“EDITOR cmd”运行时配置选项

所以我

[phil@sessions www]$ export SVN_EDITOR=emacs
[phil@sessions www]$ svn propedit svn:ignore ./blog

但是我不知道该在这里添加什么使其忽略。

如果您不在命令行中指定属性,SVN将尝试打开编辑器以允许您修改属性

您可以:

  • 在命令行上指定属性:

    svn propset svn:忽略“*”/blog

  • 在SVN_编辑器中导出编辑器名称,当SVN打开属性列表时,只需添加由新行分隔的模式


如果您没有在命令行中指定属性,SVN将尝试打开编辑器以允许您修改属性

您可以:

  • 在命令行上指定属性:

    svn propset svn:忽略“*”/blog

  • 在SVN_编辑器中导出编辑器名称,当SVN打开属性列表时,只需添加由新行分隔的模式


要指示Subversion忽略目录,必须编辑父目录的属性。因此,如果
blog
是您想要忽略的Wordpress目录,请执行以下操作:

[phil@sessions www]$ svn propset svn:ignore blog .
propset
的参数是PROPNAME、PROPVAL和PATH。因此,这将
(当前目录)上的
svn:ignore
属性设置为
blog


当然,如果要在交互式编辑器中编辑现有值,可以选择使用
propedit
而不是
propset

要指示Subversion忽略目录,必须编辑父目录的属性。因此,如果
blog
是您想要忽略的Wordpress目录,请执行以下操作:

[phil@sessions www]$ svn propset svn:ignore blog .
propset
的参数是PROPNAME、PROPVAL和PATH。因此,这将
(当前目录)上的
svn:ignore
属性设置为
blog


当然,如果您想在交互式编辑器中编辑现有值,您可以选择使用
propedit
而不是
propset

我不确定,但您可以从SVN中删除文件夹吗

svn --keep-local delete path/to/folder
这将从SVN中删除它,但将其保留在您的工作副本中


但是我不确定本地副本是否与下一次更新保持一致,我想这
svn:ignore
是一种更干净的方法?

我不确定,但你能从svn中删除文件夹吗

svn --keep-local delete path/to/folder
这将从SVN中删除它,但将其保留在您的工作副本中


但是我不确定本地副本是否与下一次更新保持一致,我猜这是一种更干净的方法。

svn propedit svn:ignore./some_path
告诉svn您想忽略
某些路径下的内容

例如,如果在./some_路径下有两个文件,并且您想同时忽略这两个文件,则可以输入

foo
bar
*
如果您想忽略foo而不是bar,只需输入

foo
最后,它理解通配符,所以如果您想忽略./some_path下的所有内容,可以输入

foo
bar
*

因此,如果您想忽略./blog下的所有内容,我认为
*
应该可以做到。

svn propedit svn:ignore./some_path
告诉svn您想忽略
some_path
目录下的内容

例如,如果在./some_路径下有两个文件,并且您想同时忽略这两个文件,则可以输入

foo
bar
*
如果您想忽略foo而不是bar,只需输入

foo
最后,它理解通配符,所以如果您想忽略./some_path下的所有内容,可以输入

foo
bar
*

因此,如果您想忽略./blog下的所有内容,我认为
*
应该可以做到这一点。

很多其他问题已经涵盖了这一点(搜索“[svn]ignore”;懒得链接它们),但文件中没有充分强调的关键问题是svn:ignore仅适用于回购协议头版本中不存在的项目。因此,如果您希望svn:ignore应用于您已经(意外)签入的项目,则需要先svn删除该项目,以使其退出回购。看看这是否解决了你的问题。

很多其他问题已经涵盖了这一领域(搜索“[svn]ignore”;懒得将它们全部链接起来),但文档中没有足够强调的关键是svn:ignore只适用于回购协议头版中不存在的项目。因此,如果您希望svn:ignore应用于您已经(意外)签入的项目,则需要先svn删除该项目,以使其退出回购。看看这是否能解决您的问题。

等等,我认为这是可行的,但当我这样做,然后提交-M“some stuff”时,它只会再次提示我博客文件夹或其他地方是否有更改[phil@sessionswww]$svn commit-m“一些更改”只是再次给我$prompt。如果
commit
没有达到您的预期,首先运行
svn status
,查看Subversion认为发生了什么变化。如果这不符合你的期望,那么我想这完全是另一个问题。等等,我认为这是可行的,但当我这样做,然后提交-M“一些东西”时,它只会再次提示我博客文件夹或其他地方是否有更改[phil@sessionswww]$svn提交-m“一些更改”只要再给我一次$prompt。如果
commit
没有做您期望的事情,请先运行
svn status
查看Subversion认为发生了什么变化。如果这不符合您的期望,那么我想这完全是另一个问题。等等,我不小心在顶级目录中的所有文件上设置了一个名为“blog”的属性。如何删除svn属性?这会递归忽略文件夹中的所有内容吗?等等,我无意中设置了一个名为“