【问题标题】:distributed source control with working directory model?具有工作目录模型的分布式源代码控制?
【发布时间】:2010-10-05 05:24:08
【问题描述】:

我正在寻找一个分布式源代码控制系统,它可以让我进行颠覆类型的检查。我有几个不同的项目,并希望将它们合并到一个存储库中。我希望能够像 subversion 一样拥有工作目录,因此每个项目不必是它自己的存储库。从 Mercurial 来看,这是不可能的,因为任何文件都必须存储在存储库中才能跟踪那里的更改。如果有人知道可以让我使用工作目录的分布式源代码控制系统,我将不胜感激。

【问题讨论】:

    标签: version-control dvcs


    【解决方案1】:

    SourceGear's Vault支持这个,对一个用户免费,通过支持Mono跨平台运行。

    【讨论】:

      【解决方案2】:

      “分布式源代码控制”中“分布式”的部分意义在于所有副本都是平等的——没有“主”副本,也没有“从属”或“工作”副本。

      您似乎要求的是“分布式源代码控制 - 但不是真的。”

      【讨论】:

        【解决方案3】:

        每个结帐都是自己的存储库这一事实不应该比无处不在的.svn 目录更不方便。

        • CVS 将元数据(仅少量)存储在 CVS 目录中,分散在各处
        • Subversion 将元数据(包括每个文件的完整基础副本)存储在 .svn 目录中,分散在各处
        • Git 将更多元数据(包括每个文件的完整历史记录)存储在单个 .git 目录中

        我认为 Git 签出比 Subversion 签出更方便,因为只有一个 .git 子目录需要关注。此外,Git 检出通常比等效的 Subversion 检出小,因为所有历史修订都以有效的压缩格式存储,而不是作为单独的未压缩文件。

        【讨论】:

        • 每次结帐都是它自己的存储库,比 subversion 模型更不方便,因为要备份我的所有工作,我必须克隆多个存储库,而不仅仅是一个。
        【解决方案4】:

        Bazaar VCS 的结账模型类似于 SVN/CVS 中的结账模型。

        【讨论】:

          【解决方案5】:

          这个问题是关于将几个不同的模块组合到一个项目存储库中以使工作更容易吗?

          在 Subversion 中,这将使用 svn:externals 处理。

          Mercurial 中的等价物是 nested repository。

          以下问题可能很有用:

          1. How do people manage changes to common library files stored across mutiple (Mercurial) repositories?
          2. Mercurial Subrepos - How do you create them and how do they work?
          3. Is the subprepos feature in Mercurial 1.4.x ready for production use?

          抱歉,如果我误解了您的问题。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-05-28
            • 1970-01-01
            • 1970-01-01
            • 2011-02-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多