ala*_*lin 50 svn version-control tortoisesvn
我不是Subversion的新手,但到目前为止我一直使用Tortoise而不是commadn系列.我的问题是,我如何忽略来自ENTIRE源的所有文件,如*.o,而不仅仅是根.
例如,如果我有以下文件:/myfile.o /folder1/myfile2.o /folder1/folder1.1/myfile3.o /folder2/myfile4.o
如果svn propedit svn:忽略"." 在根目录中,并添加*.o,它将忽略myfile.o,但不会忽略/folder1/myfile2.o,/folder1/folder1.1/myfile3.o,/folder2/myfile4.o.有没有办法为整个项目添加*.o(我无法为整个存储库执行此操作,我知道可以完成,因为此项目位于包含许多其他项目的存储库中)?
如果我需要澄清,请告诉我.谢谢!
Mic*_*yan 68
编辑
下面提供的原始答案是在Subversion v1.8之前给出的,它引入了一种方法来设置默认存储库级别ignore(被调用svn:global-ignores
)而不覆盖/替换svn:ignore
根目录和每个子目录上的属性.从1.8开始,实现所需内容的最佳方法是调用以下命令(信用转到TManhente):
svn propset svn:global-ignores '*.o' .
Run Code Online (Sandbox Code Playgroud)
在早期版本(以及更高版本)上,您仍然可以使用下面原始答案中指出的方法; 但是,请注意,这假设您可以替换/覆盖svn:ignore
每个子目录中的属性...这对于小/新的存储库可能没问题但如果您有一个大/旧存储库可能不是您想要的其中一些子目录可能具有svn:ignore
您不希望覆盖的独立属性.
原始答案
您可以在"svn propset"中使用"-R"或"--recursive"选项,如以下命令所示:
svn propset svn:ignore '*.o' . --recursive
更多信息
对于这两种情况,您可以使用以下命令获取有关svn propset的更多信息:
svn help propset
TMa*_*nte 39
只是一个更新:Subversion 1.8.0引入了继承属性和存储库Dictated配置(对于自动道具和忽略),在这种情况下也可以使用它.
您可以svn:global-ignores
在根路径中设置新属性.它将"仅影响根据属性设置的路径生成的子树".
这个新属性设置如下svn:ignore
:
svn propset svn:global-ignores '*.o' .
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅Subversion 1.8.0发行说明.