6

场景:存储库结构从/trunk/更改为/projectName/trunk/并且本地副本已过时并且有很多修改。

问题:如何在不更新文件的情况下更新工作副本目录路径。

通常,同一存储库中目录更改的解决方案是使用svn switch命令。问题是它在执行时执行更新,工作副本已经过时并且有很多与当前版本冲突的本地修改。

我正在寻找的是--relocate开关的相同行为,它更新路径但不更新文件。这样,我可以重新获得分别检查每个文件的状态和差异的能力,同时保持本地复制功能(这是我主要关心的问题)。

开关 --help提供了一些处理冲突的参数,但我找不到可以完全停止更新的东西。

有任何想法吗?非常感谢。

4

1 回答 1

9

这种特殊情况的解决方案比我想象的要简单。

svn switch默认情况下更新存储库中的最新修订,指定工作副本的基本修订(从存储库获得的最后修订)使大部分文件保持不变。

svn info通过发出命令,我得到了工作副本 (294) 的 BASE 修订版。

然后只需发出带有 BASE 修订版的 switch 命令即可更新存储库路径,而大多数文件都保持不变。

svn switch -r 294 /projectName/trunk/

于 2012-01-06T13:01:42.983 回答