【问题标题】:SVN-How to commit a file to separate repositoriesSVN-如何将文件提交到单独的存储库
【发布时间】:2010-12-29 11:09:45
【问题描述】:

我正在寻找一种解决方案,我可以使用 SVN 将文件保存到 2 个不同的存储库。

我必须有 2 个存储库,一个是我系统中的本地存储库,另一个是生产服务器中的存储库,当我在本地更改文件时,如何将文件提交到不同位置的 2 个不同存储库时间。

本地存储库的设置方式对开发人员来说是可行的。并且生产存储库具有不同的文件夹结构。

【问题讨论】:

    标签: svn


    【解决方案1】:

    据我所知,这是不可能的。一个工作副本一次只能受一个存储库的控制。

    这可能可以使用提交后挂钩来实现,但会很复杂。

    最简单的方法可能是在本地拥有两个目录,一个镜像另一个。不过,您仍然需要进行两次提交。

    这听起来有点像不好的做法。你确定这是明智和必要的吗?对于您的方案,是否有更好的解决方案,例如external

    【讨论】:

    • 外部是什么意思?
    • @user 查看链接。它是指向仓库中另一个仓库的指针
    • 哎呀@svinto 我们都因为链接到严重过时的手册版本而感到内疚:) 当前版本是svnbook.red-bean.com/en/1.5/svn.advanced.externals.html
    • 我们可以让仓库中的另一个仓库指向生产仓库路径吗?
    • 使用外部的想法看起来很有趣。
    【解决方案2】:

    我能想到的唯一 Subversion-only 解决方案是使用钩子,更具体地说,是本地服务器中的提交后钩子,用于将内容提交到远程服务器。明显的缺点是您必须自己编写脚本,而且看起来工作量很大。

    我认为这种安排是在您的开发中使用本地版本的一种解决方法。我相信人们通常使用第三方软件来完成它。你可以:

    • 为本地版本安装另一个版本控制系统(例如gitmercurialbazaar)。请记住从 Subversion 中省略您的本地版本数据库。
    • 在 Subversion 上使用 SVK,这样您就可以选择要提交到远程存储库的内容。
    • 使用具有自定义本地版本的 IDE。

    【讨论】:

    • +1 提到分布式 VCS,这可能确实是解决“本地”问题的更好方法。 @user 我一直很喜欢 Hginit.com,因为它很好地介绍了 DVCS 的工作原理
    【解决方案3】:

    你见过http://wandisco.com/ 吗?这就是他们所做的以及更多。

    【讨论】:

      猜你喜欢
      • 2011-06-15
      • 1970-01-01
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多