6

我正在将我的存储库移动到一个新位置,但我在外部属性中有硬编码(相同)存储库 URL 的文件夹。例如:
旧网址:https://OldLocation.Domain/svn/
新网址:https://NewLocation.Domain/svn/

如何将旧的存储库 URL 更改为新的?简单地编辑属性是行不通的。

4

2 回答 2

11

您应该使用相对外部(自 SVN 1.5 起可用):

要么使用“../”作为当前路径的相对路径,要么

使用相对于存储库根目录的“^/” 。

您可能还必须删除(或移走)外部文件夹的当前内容,以便更新可以将数据写入磁盘(记住:SVN 不会覆盖现有文件)

于 2010-02-10T19:33:14.420 回答
3

如果我正确理解了您的情况,则svn:externals属性指向与属性所在目录相同的存储库中的 URL。也就是位置

https://OldLocation.Domain/svn/project/path/to/a/directory

有一个svn:externals属性指向

https://OldLocation.Domain/svn/project/path/to/an/external/library

如果您的 Subversion 客户端都使用 1.5 或更高版本,您可以将所有这些外部组件替换为

^/路径/到/一个/外部/库

where^表示“该目录所在项目的根目录”。

然后,当您将整个存储库移动到 时NewLocation.Domainsvn:externals属性将跟随并引用NewLocation.Domain,您的问题将被消除。

说了这么多,我认为编辑属性应该可以工作(无论如何你都需要这样做才能转换为^格式),但你可能需要做一些删除外部的本地签出副本的组合,更新并致力于满足 svn 众神。

于 2010-02-10T19:50:42.273 回答