我意识到在这个主题上有类似的问题,但我仍然找不到我的具体案例的答案。我有一个项目,我从另一个团队的回购继承。我们做了一个“svn switch -relocate”来将我们签出的副本重定向到我们的服务器,而不是他们的服务器。但是,它们仍然有一个子目录的svn:externals,它仍指向其他一个存储库。
如何正确删除外部设备并将其替换为该目录的本地版本?我尝试删除外部目录并将其替换为本地副本并将其检入,但是当在项目根目录“svn up”时,它会抱怨该目录已“锁定”。我做错了什么?
哦,我没有安装很多gui工具。我只是在命令行上这样做。谢谢!
答案 0 :(得分:39)
在工作副本的根目录中:
svn propedit svn:externals .
你应该在你选择的编辑器中看到一个包含这样的行的文件:
path/to/extenal http://url/of/repo
如果删除该行,然后运行提交/更新,它应该从该路径中删除外部定义,并解锁路径。
如果抱怨, 可能会运行svn cleanup
。
答案 1 :(得分:4)
我遇到了这个问题,为了通过eclipse做到这一点你可以做到以下几点 转到外部所在的根文件夹,然后右键单击Team> Show properties>
您应该看到名称为svn的名称值对:external和value作为外部存储库。右键单击,您可以看到删除选项,删除链接。
你可能需要做一个svn:更新或清理之后。