首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在svnsync中更改svn url?

如何在svnsync中更改svn url?
EN

Stack Overflow用户
提问于 2010-11-11 22:16:38
回答 3查看 11.3K关注 0票数 18

如何更改(重新定位)我在使用"svnsync init“创建镜像存储库时输入的subversion url (例如从#https://whateversvn://whatever)?

尝试使用新的url再次运行svnsync初始化,但

代码语言:javascript
复制
svnsync init file:///<path_to_mirror> http:///<new_url>
svnsync: Destination repository is already synchronizing from 'http:///<old_url>'
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-30 06:38:29

sync-from URL作为revprop存储在镜像存储库中。如果在具有镜像存储库的计算机上(我的情况),请使用svnlook工具查看并使用svnadmin进行更改:

代码语言:javascript
复制
user@q.r[~]$ svnlook pg --revprop -r0 /path/to/mirror/repo svn:sync-from-url
svn+ssh://svn.abc.com:1234/svn/foo

您将看到镜像当前同步到的存储库的URL。在上面的示例中,主存储库URL以.../foo结尾。它的末尾可能没有换行符,因此您的shell提示可能会跟在后面。现在您需要将其放到一个文件中,因为svnadmin使用一个文件作为输入来更改revprop。

代码语言:javascript
复制
user@q.r[~]$ svnlook pg --revprop -r0 /path/to/mirror/repo svn:sync-from-url > t.txt

现在编辑t.txt以更改为主存储库的URL。这可能会导致在t.txt的末尾显示换行符,并导致来自svnsync的模糊/无意义的错误消息。因此,摆脱它:

代码语言:javascript
复制
user@q.r[~]$ cat t.txt | tr -d '\n' > t2.txt

注意,我们现在有了t2.txt,它是经过清理的文件。然后使用svnadmin将revprop更改为刚刚编辑和清理的文件的内容:

代码语言:javascript
复制
user@q.r[~]$ svnadmin setrevprop /path/to/mirror/repo -r0 svn:sync-from-url t2.txt

请注意,使用的是t2.txt而不是t.txt。最后,请检查您的更改:

代码语言:javascript
复制
user@q.r[~]$ svnlook pg --revprop -r0 /path/to/mirror/repo svn:sync-from-url
svn+ssh://svn.def.com:5678/svn/foo

您应该看到新的repo URL,紧跟其后的是shell提示符,没有换行符。在上面的示例中,URL以foo结尾,紧跟其后的是shell提示符user@q.r~$。

票数 22
EN

Stack Overflow用户

发布于 2011-06-16 16:57:41

如果您使用用于运行svnsync的帐户,则只需使用:

代码语言:javascript
复制
svn propset --revprop -r 0 svn:sync-from-url http://my.new/url url://to.my.repo

如果您按照手册中的说明操作,并添加了一个pre- rev -props钩子,该钩子拒绝除svnsync用户以外的任何人更改rev props,则应该可以正常工作。

票数 14
EN

Stack Overflow用户

发布于 2017-07-29 04:38:06

Svnsync将远程存储库URL存储在存储库镜像的第一个修订版的修订版属性中。因此,您可以对本地镜像上当前配置的存储库URL执行view操作,如下所示:

代码语言:javascript
复制
$ svn pg --revprop -r0 svn:sync-from-url file:///path/to/svn-mirror

这意味着您只需将远程存储库URL更改为change the revision property即可。例如:

代码语言:javascript
复制
$ svn ps --revprop -r0 svn:sync-from-url https://svn.example.org/repo \
         file:///path/to/svn-mirror/

输出示例:

代码语言:javascript
复制
property 'svn:sync-from-url' set on repository revision 0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4155262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档