我在Windows 7中使用Tortoise SVN 1.6.16。如果我想要在将来的提交中排除某种文件类型,我想我可以在我的工作文件夹中找到该类型的文件,然后右键单击然后选择“TortoiseSVN->删除并添加到忽略列表 - > * .ext”,其中ext是我单击的文件的文件扩展名,如下图所示。
但是,当我这样做时,它只会排除该特定文件,并且在下次提交时,该类型的所有其他文件仍然会出现在列表中以进行提交。
我做错了吗?如何告诉Tortoise或SVN在将来的提交中忽略某种类型的所有文件?
答案 0 :(得分:15)
我和@Stefan有同样的预感:您可能会看到子目录中的文件,并认为即使您只将忽略应用于单个文件夹,也应忽略这些文件。
所以,如果事实确实如此,这就是食谱:
如果要忽略单个目录中的文件或模式:
使用便捷菜单命令添加到忽略列表。
如果要忽略子树中的文件或模式:
打开子树根的subversion属性(TortoiseSVN >> Properties
)。添加或修改svn:ignore
关键字的条目。该插图显示了一个示例,其中我指定忽略obj
子文件夹以及.user
或.bak
扩展名的所有文件。
但是,秘密在于规范中 - 当您定义要忽略的模式时,请选择此处指示的递归选择:
不幸的是,这个方法有一个问题:在我的示例中,我之前已指定忽略obj
和*.user
,而我只添加了*.bak
模式。当我递归应用时,它不仅仅应用更改(* .bak),而是仅应用svn:ignore关键字中的所有(obj,* .user和* .bak) )到所有子文件夹。这可能是也可能不是你想要的,所以要注意它。
答案 1 :(得分:2)
它会正确忽略所有bat文件,但不会递归!它只会在您将其添加到忽略列表的文件夹中忽略它们。
答案 2 :(得分:1)
你也可以使用Tortoise的全局忽略模式(如果它适用于你所有的工作副本):