Git在多个网络/离线站点上

时间:2015-03-16 18:52:36

标签: git version-control

我们是两个团队,负责一个项目。每个团队都在一个单独的网络上。遗憾的是,由于公司规则,这些网络都没有连接到互联网,也没有数据允许通过互联网传输给该项目。 我们只能在它们之间不时传输文件,这是唯一的连接。

我们如何维护Git仓库,同时最大限度地减少需要在站点之间传输的数据?

理想情况下,每个团队都需要能够克隆,提交并推送到他的网络上的裸仓库。每当我们想要同步回购时,我们将在用于同步回购的网站之间传输某种(二进制?)差异/补丁。

目前正在使用的方法: 我们有一个简单的Git仓库,位于网络A上。团队A很高兴。每次来自网络B的开发人员想要同步他们的更改时,从上次与裸仓库同步制作一系列缓存,将他们交给团队A,团队A在网络A上回购补丁。有时我们会更换裸机来自网络B的回购,带有来自网络A的回购副本,因此网络B上的开发人员可以进行更改。

这种方法有什么问题? 1.我们只在站点A上拥有“最新”仓库。团队B需要创建补丁并在站点A上应用它们以便同步他们的工作。 2.我们不时地在站点之间转移整个回购,而不仅仅是差异(每当我们想要在站点B上拉动)。 3.来自站点B的开发人员没有推动使用裸仓库(仅为团队A创建补丁)。

谢谢!

1 个答案:

答案 0 :(得分:0)

嗯,显而易见的解决方案是在线托管一个Git存储库,这两个位置都可以推送/拉出。这是标准方法,你甚至可以使用GitHub。