gpt4 book ai didi

svn - 如何导出(然后导入)Subversion 存储库?

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

我正忙于一个项目,在该项目中我使用商业 SVN 提供商来存储源代码。客户最终选择的网络主机包含一个存储库作为托管包的一部分,因此,既然项目已经结束,我想将存储库重新定位到他们的网络主机并停止商业帐户。

我该如何去做呢?

最佳答案

如果您想移动存储库并保留历史记录,您可能需要两台主机上的文件系统访问权限。如果您的后端是 FSFS(最新版本的默认设置),最简单的解决方案是制作整个存储库文件夹的文件系统副本。

如果您有 Berkley DB 后端,如果您不确定您的后端是什么,或者您要更改 SVN 版本号,您将需要使用 svnadmin 转储旧存储库并加载它到你的新存储库中。使用 svnadmin dump 将为您提供一个文件备份,您可以将其复制到新系统。然后,您可以创建新的(空)存储库并使用 svnadmin load ,这实际上将重放所有提交及其元数据(作者、时间戳等)。

您可以在此处阅读有关转储/加载过程的更多信息:

http://svnbook.red-bean.com/en/1.8/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate

此外,如果您执行 svnadmin load,请确保使用 --force-uuid 选项,否则人们在切换到新存储库时会遇到问题。 Subversion 使用 UUID 在内部识别存储库,并且它不会让您将工作副本切换到不同的存储库。

如果您没有文件系统访问权限,可能有其他第三方选项(或者您可以编写一些内容)来帮助您迁移:本质上您必须使用 svn 日志在新版本上重播每个修订版存储库,然后修复元数据。您需要 pre-revprop-change 和 post-revprop-change Hook 脚本来执行此操作,这假定了文件系统访问权限,所以 YMMV。或者,如果您不想保留历史记录,可以使用工作副本导入到新存储库中。但希望情况并非如此。

关于svn - 如何导出(然后导入)Subversion 存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49450/

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