我正在使用 svnsync 在两个系统之间同步 SVN 存储库,但我不能 100% 确定同步完成后是否可以使其独立于我的“新用户”。
我需要做什么才能使其成为一个完全独立的实体?仅更改 passwd 文件就足够了吗?
最佳答案
What do I need to do to make it a completely independent entity?
新存储库和原始存储库之间的唯一链接是 svnsync 同步使用的许多修订属性。您可以安全地删除这些内容,如下所示:
svn propdel --revprop -r 0 svn:sync-from-uuid http://svn.example.com
svn propdel --revprop -r 0 svn:sync-last-merged-rev http://svn.example.com
svn propdel --revprop -r 0 svn:sync-from-url http://svn.example.com
除了确保 svnsync Synchronize
无法再运行之外,这并没有做太多事情。
编辑:只是想到了别的事情。您可能在项目中使用了 svn:externals 属性来指向另一个存储库或同一存储库中的另一个位置。
应该使用relative URL syntax对于同一存储库内的链接,在这种情况下没有问题。但如果使用绝对 URL,那么此类链接将在 svnsync 之后继续指向原始存储库。您可以像这样检查所有 svn:externals 属性(可能需要一段时间,递归扫描所有文件夹):
svn propget -R svn:externals http://svn.example.com/
关于svn - 同步 SVN 存储库,然后使其独立(复制存储库),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4744142/