SVN:从不存在的路径切换?

时间:2011-09-28 12:38:11

标签: svn

我有一个已移动的存储库,路径已重命名,然后截断了日志。所以我没有旧的道路。当我尝试做svn switch https://new.repo/new/path svn抱怨“无法替换内部的目录”。我该如何避免这种情况?

P.S。重建旧路不是一种选择。

5 个答案:

答案 0 :(得分:2)

如果它仍然是相同的回购,并且它只是改变回购路径的路径,那么您应该将--relocate选项传递给svn switch。这有帮助吗?

svn switch --relocate https://new.repo/new/path

(警告:如果它不是同一个回购,那么使用--relocate会破坏事情)

答案 1 :(得分:0)

从新位置结帐并将旧工作副本的内容复制到新的工作副本

答案 2 :(得分:0)

问题解决了。我创建了一个在所有.svn / entries中更改路径的脚本。一切正常。

答案 3 :(得分:0)

嗯,已经解决但

svn --relocate https://old.repo/old/path https://new.repo/new/path

应该很好地完成这个伎俩

答案 4 :(得分:0)

我遇到了同样的问题而无法使用" switch"或"切换 - 立即"。正如原始问题所述,我收到了错误"无法替换内部"与前者和后者相关"重新定位只能更改URL的存储库部分"

当我在CentOS上时,通过从我的工作目录的根目录运行以下命令,我能够使用sed手动更新.svn / entries文件中的url:

find . -type f -name entries -exec sed "s/old\/path/new\/path/" -i {} \;