如何阻止SVN恢复"签出目录

时间:2017-01-15 20:36:37

标签: svn

我的结构类似

data

我检查了root并获得了所有三个目录。我真的不想要这个。我只想要/ root,/ branches和/ trunk。我不想在我的本地机器上使用/标签,它太大了。如果我在本地删除它,SVN会尝试恢复"它每当我更新/ root。

我可以删除整个内容并重新开始,但我有一个带宽限制,这些非常大。我已经/ branches和/ trunk是最新的,我只想删除并停止/ tags的更新(以恢复空间并避免意外地开始更新/恢复)。

你是怎么做到的?

2 个答案:

答案 0 :(得分:3)

您想要做的是"sparse directory/checkout"。这样做:

  1. 将没有内容的项目根目录检入当前目录

    svn co [REPO-URL] --depth emtpy .
    
  2. 更新工作副本以包含所有trunk ...

    svn up trunk --depth infinity
    
  3. ...和branches

    svn up branches --depth infinity
    
  4. 现在,在当前目录中执行svn update将更新trunkbranches目录,但不关心tags目录 - 它将被有效地忽略。

    更新:关于如何更改现有工作副本的问题 - 这也是可能的:

    svn up tags --set-depth empty
    

    这将从工作副本中删除所有tags文件夹的内容(但不删除文件夹本身)。

答案 1 :(得分:1)

问题是您正在更新/ root。这包含/ root / branches。 (即使你重新开始也会。)

如果你对/ root / trunk和/ root / branches运行svn命令,你就不会遇到这个问题。