gpt4 book ai didi

svn - 如何在 svnsync 中更改 svn url?

转载 作者:行者123 更新时间:2023-12-03 13:22:59 25 4
gpt4 key购买 nike

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

尝试使用新 url 再次运行 svnsync init 但

svnsync init file:///<path_to_mirror> http:///<new_url>
svnsync: Destination repository is already synchronizing from 'http:///<old_url>'

最佳答案

sync-from URL 作为 revprop 存储在镜像仓库中。如果在有镜像仓库的机器上(我的情况),使用 svnlook 工具查看和 svnadmin 改变:

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 使用一个文件作为输入来改变 revprops。
user@q.r[~]$ svnlook pg --revprop -r0 /path/to/mirror/repo svn:sync-from-url > t.txt

现在编辑 t.txt 将 URL 更改为主存储库。这会导致 末尾出现换行符。 t.txt 并导致来自 svnsync 的模糊/无意义的错误消息。所以摆脱它:
user@q.r[~]$ cat t.txt | tr -d '\n' > t2.txt

请注意,我们现在有 t2.txt 这是经过清理的文件。然后使用 svnadmin 将 revprop 更改为刚刚编辑和清理的文件的内容:
user@q.r[~]$ svnadmin setrevprop /path/to/mirror/repo -r0 svn:sync-from-url t2.txt

请注意,使用 t2.txt 而不是 t.txt。 最后,检查您的更改:
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[~]$。

关于svn - 如何在 svnsync 中更改 svn url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4155262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com