Git:自动同步多个服务器

时间:2016-04-07 13:10:30

标签: git synchronization

我有一个客户端在自己的服务器上有几个Git存储库。但是,根据策略,我无法访问这些存储库。然后,在我自己的Git服务器上,应该镜像其中一些存储库,以便我们可以交换工作。

客户端网络上有一台服务器可以访问这两个存储库。现在的目标是建立一个尽可能少引起麻烦的同步过程。

如果是简单的单向同步,那么我们可以将一个存储库/服务器作为主服务器并强制推送到另一个服务器。但是,这种情况要求我们需要双向同步。由此产生了几个问题:

  • 如果一方删除分支怎么办?根据同步顺序,只需从另一侧重新创建分支
  • 如何解决冲突?即双方在同一分支机构承诺。理想情况下,这会落后于用户并迫使他们正确合并

有一些想法可以解决这个问题,但是我在这里提出问题,试着看看是否有任何实践可以让我们以干净的方式实现我们的场景。

我的粗略想法:

  • 使用名称空间:

    1. 分支名称不是" master"," foo"," bar"等等,但总是加上前缀"客户/主人","客户/ foo"," mycompany / master"等等。
    2. 只允许客户端推送到客户端/ *分支机构,我的公司只能被推送到mycompany / *分支机构。
    3. 两个名称空间之间的同步将由开发人员手动完成
  • 使用钩子:如果远程服务器的分支处于不同状态(即更新提交),则实现服务器端钩子以禁止推送

0 个答案:

没有答案
相关问题