2

我们的场景是我们的组织位于几个地理位置。

我想设置一个 git 中央服务器,以便每个分布式团队都可以将他们的更改推送到其中并与其他团队共享。

我想知道做这种事情的最佳选择是什么。

我能想到的当前2个选项是:

  1. 所有全球团队的中央服务器。
  2. 每个地理站点一台中央服务器。在服务器之间设置某种自动推送以保持同步。
  3. 托管解决方案。

虽然#3 目前不是我们组织 AFAIK 的选项,但还有其他选择吗?什么是最好的选择?

我假设已经有一些指导方针和最佳实践来解决这个特定问题。

4

2 回答 2

3

你真的需要多个“中央服务器”吗?为什么不让所有团队都使用一个存储库。大部分 gits 工作都是离线完成的,甚至必须与网络通信的部分也得到了相当优化。我认为只有一个中央存储库不会有问题。

于 2012-05-13T12:37:06.187 回答
1

我的第一反应是简单地设置一个 github“组织”并通过它管理您组织的私有存储库。有很多好处——包括备份正在处理的数据,让非常了解 git 的人管理基础设施等。

但是,如果公司由于某种原因无法做到这一点,我建议尽可能拥有一个单一的全局存储库。

然后每个人都可以简单地克隆中央存储库并将更改拉/推到它。添加额外的存储库会增加复杂性和风险,例如:

  • 必须备份多个服务器以确保存储库是安全的
  • 必须有流程来确保不同的存储库都相互推/拉更改。
  • 让一些团队没有足够频繁地同步他们的区域存储库。
  • 跟踪通过其他存储库中的提交引入的错误。

据我所知,拥有区域服务器也没有真正的好处。

于 2012-05-13T12:37:47.823 回答