【问题标题】:Can you use 'svnadmin hotcopy' with a remote SVN repository你可以在远程 SVN 存储库中使用“svnadmin hotcopy”吗
【发布时间】:2018-05-13 02:56:19
【问题描述】:

根据 SVN 文档 (http://svnbook.red-bean.com/en/1.7/svn.ref.svnadmin.c.hotcopy.html),您只能使用本地存储库运行 svnadmin hotcopy

有没有办法使用远程 SVN 存储库,使用 URL 来运行此命令?

我基本上想制作一个完整的 SVN 存储库(超过 6000 个版本)副本,包括所有历史记录、标签、版本等,并将其存储在我的本地计算机上,完全独立于远程存储库。

【问题讨论】:

    标签: svn tortoisesvn remote-server svnadmin


    【解决方案1】:

    我尝试了很多不同的方法,包括svnadmin hotcopy,但毫无疑问,最后最好的方法就是简单的 svn dump,比如从 svn 书中摘录的这个。 svnadmin dump /var/svn/repos > full.dump link here 完成后将其打包并将其发送到您想要存储库的位置。我几乎尝试了所有其他方法,这对我来说是最简单和最好的。我似乎记得它会自动设置 UUID,它是您的 Subversion 项目的唯一标识号。如果你想使用它作为原始那么它需要是相同的UUID,如果它是不同的使用setuuid命令例如svnadmin setuuid /var/svn/repos-new 2109a8dd-854f-0410-ad31-d604008985abhttp://svnbook.red-bean.com/en/1.6/svn.ref.svnadmin.c.setuuid.html

    【讨论】:

      【解决方案2】:

      Subversion 1.7 引入了svnrdump,这是一种远程创建存储库转储文件的方法。然后,您可以使用 svnadmin load 将该转储文件加载到本地存储库中。

      【讨论】:

      • 我以前用过svnrdump,但是这个存储库太大了,我没有直接访问它的权限。我通过代理连接。它通常会到达修订版 50,然后超时。花了 2 个小时才到第 50 版。有没有替代方案?
      • @JonnySprouse 没有直接的文件系统访问权限,这是唯一的方法。您试图通过创建整个存储库历史记录的本地克隆来解决什么问题?
      • 我正在尝试使用 svn2git(KDE 版本)将 SVN 存储库迁移到 Git,我需要一个转储/本地副本: 1. 使用 svneverever 帮助我为 svn2git 编写规则 2. 到使用本地副本而不是远程存储库运行 svn2git,因为它将减少大量开销和运行时间,这对于它是一个巨大的存储库至关重要。我可以将多个转储文件合并到一个存储库中,并且它与在线存储库完全相同(在转储时),包含所有标签、版本等。
      • 是的,您可以执行增量转储,然后将它们按顺序加载到存储库中。但是,如果您正在转换到 git(我假设完全离开 SVN),您应该与您的服务器管理员合作并直接访问存储库以制作热拷贝,而不是尝试像这样的 janky 变通方法。
      • 我能问一下,为什么热拷贝比转储更好? hotcopy 是否最适合获取所有版本、标签和所有历史记录?等等。我意识到,如果我有一个 hotcopy,我就不需要将转储加载到我自己的存储库中,我已经拥有了它,对吗?
      猜你喜欢
      • 1970-01-01
      • 2010-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-20
      • 1970-01-01
      • 2011-05-06
      • 1970-01-01
      相关资源
      最近更新 更多