撤消TortoiseSVN中子文件夹的签出

Jer*_*oen 20 svn tortoisesvn


如何使用TortoiseSVN "取消签出" 子文件夹


我试过了什么:

前两个选项似乎首先起作用,但是当我在顶级文件夹上点击检查修改时,它会告诉我子文件夹及其内容"丢失".这当然不是我想要的.

为了使事情更清楚,我的文件夹结构的相关位与此类似:

//Repository/trunk/...
//Repository/branches
                     /some-feature-branch1/...
                     /some-feature-branch2/...
                     /some-feature-branch3/...
                     /some-feature-branch4/...
                     etc.
Run Code Online (Sandbox Code Playgroud)

过去我做过以下事情:

  • //Repository/branches本地检出该文件夹,而不是递归抓取内容.
  • 对某些(但不是全部)功能分支子文件夹进行单独检查

我正在尝试some-feature-branch3从本地磁盘中删除-say- 但是当检查"branches"文件夹进行修改时,这总是会导致子文件夹状态"丢失".

请注意,我更喜欢使用TortoiseSVN修复此问题,但如果不可能,命令行修复将是一个可接受的替代方案.

mal*_*cot 39

在SVN 1.7中你可以做svn up --set-depth exclude some-feature-branch3(不确定你是否可以在SVN 1.6中完成).

在Tortoise中,您可以右键单击some-feature-branch3- >'Update to Revision' - >'Update Depth:Exclude' - >'Make Depth Sticky'.

如果你不能在1.6中做到这一点,你只能用深度做同样的技巧empty.它将离开目录本身,但它将是空的,这对于大多数实际目的来说已经足够了.


cHa*_*Hao 20

右键单击该文件夹,然后转到"更新到修订版本...".在弹出的对话框中,将"更新深度"设置为"排除".(注意,这似乎只适用于文件夹.)这将从您的工作副本中删除它,但不会影响存储库.Tortoise只会知道在更新期间不尝试更新它.

要撤消它,可以右键单击父文件夹(或其父文件夹,依此类推),然后选择"Repo Browser".找到排除的文件夹,右键单击并选择"将项目更新到修订版".你会得到同样的对话; 这一次,只要确保它说"工作副本".

  • +1有关如何*撤消*排除的说明 (2认同)