git服务器之间同步2种方式

时间:2015-01-27 15:59:32

标签: git sync

我目前在serverA上有一个git存储库镜像到serverB。 我这样做是通过定期从serverA和#34; push --mirror"到serverB。两个存储库都是相同的。

不幸的是,一些开发人员只能访问serverB,因为他们无法访问serverA,所以无法为该项目做出贡献。我想允许他们将代码推送到serverB,并将这些更改镜像到serverA。 (反之亦然,一些开发人员只能访问serverA)

我需要什么:

如果开发人员将代码推送到ServerB,我希望代码自动出现在ServerA上。

如果开发人员将代码推送到ServerA,我希望代码自动出现在ServerB上。

关于如何做到这一点的任何想法?

非常感谢。 ģ

1 个答案:

答案 0 :(得分:0)

你可以在serverB和serverA上用post-receive hook做你想做的事情,尽管处理不可避免的冲突会很有趣。我不打算再这样做,因为整个想法都会失败。

自动将所有更改从serverB推送到serverA,这使得拥有单独的安全/权限服务器成为可能。 serverB上的所有人都可以更改serverA,serverA上的所有更改都将显示在serverB上。重点是什么?你也可以让每个人都访问serverA并为自己节省很多麻烦。

由于serverB可以与serverA通信,因此在serverB上将一个网络隧道设置为serverA,反之亦然。您可以根据需要使用SSH隧道或HTTP代理。