SVN:防止子目录更新?

时间:2009-09-01 09:01:09

标签: svn tortoisesvn

我的repo有一个dir包含一些非常大的文件,每次更改它都会浪费我一天中的几分钟更新...它们不是我需要的文件。

也许理想情况下他们会在他们自己的回购中,但这对我来说不是一个选择...当我更新整个工作目录时,有没有办法让SVN不包括那个目录,但是我会手动让我手动如果我想每个星期左右更新那个子目录?

最好使用Tortoise而不是命令行......

ps:我尝试使用忽略,但由于某种原因,它似乎删除了子目录......虽然这可能是我做错了。

3 个答案:

答案 0 :(得分:4)

Subversion 1.6添加了一个名为Spare Directory Exclusion的新功能(甚至比1.5中的--depth更好),因为您可以直接指定哪个目录,您不想在一个命令中更新。

svn update --set-depth=exclude www

可以找到的示例in the blog

我真的不知道这会如何在Tortoise中起作用(我认为这是不可能的)。

答案 1 :(得分:3)

是的,您可以使用Subversion的新版本(版本1.5)--depth feature。你可以这样做:

  • 使用--depth immediates
  • 查看您的项目根目录
  • 对于除之外的所有目录,请查看那些没有--depth选项的目录(或等效地,--depth infinity

Subversion将记住您的深度首选项,因此当您从项目根目录执行update时,将跳过您省略的目录(包含大文件)。

TortoiseSVN还支持GUI中的checkout depth

另请注意,虽然版本1.5或更高版本的Subversion客户端将支持上述选项,但为了有效工作,服务器也必须更新到1.5或更高版本。否则,由于服务器不理解--depth请求,客户端将询问所有内容并过滤掉客户端上的更新。显然,这不会解决你的更新问题需要太长时间。

答案 2 :(得分:1)

你能不能只添加一个svn:ignore?