正如标题所解释的那样 - 是否可以递归地在目录上设置忽略属性,包括动态生成的文件和目录。
例如,我有一个 tmp 文件夹,它会不断地添加和删除许多其他文件和文件夹。
调查
svn propedit svn:ignore ...
虽然最好避免做递归的事情(通过忽略整个生成的目录),但如果你想强制文件系统分支递归地忽略项目,那么使用
svn -R propset svn:ignore ignorefile.txt ...
附带的警告是,您将使用新的忽略模式集覆盖下面可能设置的忽略模式。
如果 tmp 中没有版本化文件,那么我会 svn:ignore 该目录在顶层。否则,您必须找到与生成的文件而不是版本化文件匹配的模式(例如,强制生成的文件被命名为generate-FOO.bar和 svn:ignore 该模式)。
您可能想在 svn 配置文件中设置全局忽略规则:
global-ignores = tmp
但是,您应该记住,它将为新创建的工作目录激活,这可能会忽略您不希望的内容(使用一些罕见和特定的名称)并且不会存储在 SVN 存储库中(作为属性)。
根据您的上下文,您还可以查看 ~/.subversion/config 中的“global-ignores”配置字段。它是基于每个用户定义的,而不是作为存储库的一部分存储的。