更新版本库

Updating Repository to Revision

考虑以下场景。

我有一个 SVN 存储库。我已使用自定义检出深度在我的磁盘上检出,即只有一些目录被检出到我的磁盘上。例如,如果 branches 有两个文件夹 A 和 B,并且在我的自定义深度下,我只 selected 文件夹 A 被检出。

branches
  |___A
  |___B
    |___C
    |___D
Tags
Trunk

文件夹 B 被另一个团队使用。我只想要文件夹 B 下的文件夹 C 中的数据。因此,我右键单击存储库位置并 select "Update to Revision"。

在单击更新到修订对话框中的选择项目按钮时打开的 Repo 浏览器中

  1. 我必须展开 A 下所有先前已检出的子目录,以便添加未 select 的剩余子目录
  2. 当我只选中文件夹 B 下的文件夹 C 并取消选中所有其他目录时,它们会在我更新时被删除。

如何在不更新文件夹 A 的情况下更新到文件夹 B 下的文件夹 C?

我没有完全理解问题,但是:

TortoiseSVN 在结帐时选择项目的方式很繁琐,所以我通常更喜欢使用命令行。更简单,只需要一次

例如:

svn co --depth immediates http://host/repo/myrepo .
svn up --set-depth empty branches
svn up --set-depth infinity branches\A
svn up --set-depth empty branches\B
svn up --set-depth infnity branches\B\C

这应该会产生

branches (has only A, B)
  |___A (has all)
  |___B (has only C)
    |___C (has all)
tags (empty)
trunk (empty)