复制github风格的git服务器架构

时间:2009-09-03 12:54:53

标签: git github

我正在尝试使用集成管理器工作流详细here(这是github使用的)工作中设置git服务器。我已经按照入门教程开始,已经安装了一个安装了gitosis的服务器,而且我正在寻找方向,以实现这个特定的工作流程。

2 个答案:

答案 0 :(得分:3)

该工作流程的基本要点是:

  1. 每个开发人员都有一个本地私人回购用于他们自己的个人工作。
  2. 每个开发人员都有一个 public repo,他们推送的更改将被其他人使用,或者集成到主项目中。
  3. 集成商将所需的更改从开发人员的公共回购转移到他自己的个人集成回购中。
  4. 准备好后,集成商会将收集的(“集成”)更改从其集成商仓库推送到项目的主公共仓库中。
  5. 开发人员从项目的主要公共回购中删除更改。并且循环重复。
  6. 所以你基本上需要两件事:

    1. 用于存储项目的主,公共,规范存储库的服务器。 (在所有人可以看到它的意义上,它不一定是“公共的” - 只要是整个开发团队都可以访问的公共场所。)
    2. 存储开发人员公共回购的地方,因此集成商可以轻松地从中获取。
    3. 只要你有一台运行Git服务器的服务器机器(通过Git守护程序,SSH,http / https或任何其他支持的Git协议),这两件事就很容易实现。

答案 1 :(得分:0)

因此,为了使其成为可接受的集成管理器架构,我最终安装了gitosis并将开发人员设置为gitosis的用户。然后将储存库克隆到例如gitosis中。 devA / projectA.git devB / projectA.git。我在服务器上克隆了权限问题(确保没有钩子文件夹可执行),而我所做的感觉有点hacky但它​​的工作原理。