代码之家  ›  专栏  ›  技术社区  ›  Akeem

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

  •  2
  • Akeem  · 技术社区  · 15 年前

    我试图在工作中设置一个git服务器,该服务器使用integration manager工作流 here (这就是github的用途)。我已经完成了入门教程,并且已经安装了一个安装了gitosis的服务器,我正在寻找这个特定工作流实现的方向。

    2 回复  |  直到 15 年前
        1
  •  3
  •   mipadi    15 年前

    工作流程的基本要点是:

    1. 每个开发人员都有 地方的 , 私有的 为自己的个人工作回购。
    2. 每个开发人员都有 公众的 他们将要被其他人使用或集成到主项目中的更改推送到的回购协议。
    3. 积分器 从开发人员的公共回购中提取所需的更改到他自己的个人集成回购中。
    4. 准备就绪后,集成者将收集的(集成的)变更从其集成者回购推送到项目的主 公众的 回购协议。
    5. 开发商从项目的主要公共回购协议中撤销了变更。循环重复。

    所以你基本上需要两件事:

    1. 一个服务器,用来存储主的,公共的, 典范的 项目回购。(它不必“公开”,因为 每个人 可以看到它——只是在整个开发团队都可以访问的意义上是公开的。)
    2. 一个存放开发商公共回购的地方,这样集成商就可以轻松地从中提取。

    只要服务器机器运行git服务器(通过git守护进程、ssh、http/https或任何其他受支持的git协议),这两件事就很容易实现。

        2
  •  0
  •   Akeem    15 年前

    为了让它成为一个可接受的集成管理器架构,我最终安装了gitosis,并在gitosis中将开发人员设置为用户。然后在gitosis中克隆存储库,例如deva/projecta.git devb/projecta.git。我在服务器上克隆时遇到权限问题(请确保没有hooks文件夹的可执行文件),我做的事情让人觉得有点老套,但它是有效的。