【问题标题】:How can one set up Git source control with full mesh topology?如何使用全网状拓扑设置 Git 源代码控制?
【发布时间】:2012-08-29 12:26:18
【问题描述】:

我有一个由几台计算机组成的本地网络,每台计算机都有一个本地 Git 存储库,其中包含相同的代码,不同的开发人员在处理它们。 我想找到一种方法来将每个本地存储库中的更改与所有其他存储库中的更改同步,而无需使用集中式服务器。

(如果您有兴趣,这是因为任何计算机都可能(而且经常会)遭受突然的磁盘故障,通常会导致其上的所有数据丢失,所以我买不起一个失败点。)

我已经看到了几个可能的工作流程示例,但它们都要求设置具有固定的远程系统。

我想知道的是:
如何设置一组可以与网络中所有其他计算机中的存储库同步的存储库,例如 full mesh topology

然后我将如何将计算机添加/删除到此存储库网络?

【问题讨论】:

    标签: git topology


    【解决方案1】:

    共享存储库非常简单。只需在每个开发人员的系统上设置一个公共存储库即可。

    要自动同步到每个人,您可能必须编写某种 shell 脚本来执行存储在存储库中的推送和拉取操作。要添加计算机,只需在脚本中添加 git push new-computer

    但是,集中式服务器并不是 DVCS 的“单点故障”。如果它出现故障,您只需从其他人的存储库中协作,直到它恢复。您增加了很多复杂性,以避免发生相对罕见但很容易解决的情况。

    【讨论】:

      【解决方案2】:

      使用集中式服务器。如果集中式服务器上的磁盘发生故障,您不会丢失所有数据。如果他没有使用集中式服务器,每个开发人员都将拥有相同的完整存储库副本。要恢复,您的开发人员只需指定一个新的集中式服务器并推送到该服务器即可。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-26
        • 1970-01-01
        • 2018-06-15
        • 2022-07-05
        • 2013-12-02
        • 2013-08-16
        • 1970-01-01
        相关资源
        最近更新 更多