svn结账深度

Pab*_*sso 43 svn svn-checkout

我有一个像这样的树的SVN项目:

/project
    /dir1
        /subdir1
           -file1
           -file2
            .....
        -file1
        -file2
        .....
    /dir2
        -file1
        -file2
        .....
    /dir3
        /subdir1
           -file1
           -file2
            .....
        /subdir2
           -file1
           -file2
            .....
        /subdir3
           -file1
           -file2
            .....
        /subdir4
           -file1
           -file2
            .....
    /dir4
        -file1
        -file2
        .....
-file1
-file2
Run Code Online (Sandbox Code Playgroud)

我需要结账

  • 来自/ project的所有文件
  • 满/ dir1
  • 满/ dir2
  • 满/ dir4
  • 从/ dir3我只需要/ subdir1和/ subdir3

我可以使用某种深度的svn命令行检查这些文件/文件夹吗?如果是这样我该怎么办?我可以在结帐后将divir2添加到dir3吗?如何更新以这种方式创建的工作副本?普通的"svn up"命令是否只更新这些文件夹或项目的完整更新?

ks1*_*322 67

你需要的是稀疏结账.

在您的情况下,您可以:

svn co --depth files file:///project project
cd project
svn up --set-depth infinity dir1 dir2 dir4
svn up --set-depth empty dir3
svn up --set-depth infinity dir3/subdir1 dir3/subdir3
Run Code Online (Sandbox Code Playgroud)

我可以在结帐后将divir2添加到dir3吗?

是: svn up --set-depth infinity dir3/subdir2

如何更新以这种方式创建的工作副本?普通的"svn up"命令是否只更新这些文件夹或项目的完整更新?

是的,svn up将只更新这些文件和文件夹,即更新深度将被保留.

  • 如果你想自动添加新的顶级子目录,使用`--depth immediates`而不是`--depth files`就可以了. (3认同)