【问题标题】:Git workflow for a small team of developers and designers适用于小型开发人员和设计人员团队的 Git 工作流程
【发布时间】:2011-05-19 04:30:36
【问题描述】:

我对 Git 分支模型和我想为我的团队(开发人员 + 设计师)创建的工作流程感到迷茫。

假设项目是基于MVC模式的,所以我们有一个类似的结构:

型号/
控制器/
观看次数/

开发人员使用一些基本/生成的视图(例如 Rails、Django 或 CakePHP 应用程序)处理 M & C 部分 设计师在 V 部分工作

我如何管理开发人员在 M&C 上工作并保留一些基本的糟糕视图,同时,设计师根据开发人员逐步编码和添加的控制器操作制作性感视图?

我试图让它与 3 个分支一起工作:

master(生产就绪)
开发
用户界面

但不知道在 ui 分支上工作的设计人员如何将代码保持在 /views 以外的其他地方更新一个工作应用程序...

感谢大家的帮助!

【问题讨论】:

    标签: ruby-on-rails git model-view-controller cakephp workflow


    【解决方案1】:

    使用 git,开发人员没有理由在单独的分支上工作或模拟视图。让设计人员和开发人员在同一个分支、同一个代码库上工作。当视图完成(或至少改进而不崩溃)时,让设计人员提交并将它们推送到主存储库。开发人员也是如此:当本地更改“完成”时,让他们提交并推送它。

    在推之前,每一方都需要拉(以确保没有冲突)。如果这两个小组正在使用互斥的代码片段(单独的文件甚至是同一文件的不同部分),那么 pull 将简单地更新本地副本并且一切都会正常工作。

    有了这个,双方总是看到最新的代码库,并直接为确切的最终目标做出贡献,观察它的发展。

    【讨论】:

      【解决方案2】:

      Git 使用起来非常简单,没有理由每个人都不应该拥有自己的分支来工作。地狱,这是使用版本控制系统的主要原因之一。在 Git 中,提交很便宜。

      通常,我们有一个 master,任何正在处理更新或功能的人都会从 master 分支并在需要时分支一个分支,然后发布 master(像我这样的人)将负责将它们全部合并回来、检查冲突、测试版本并合并回主版本。

      在您处理它时,其他人可以通过对您的分支执行 fetch/pull 以提取更改来接收您的更改。

      【讨论】:

        【解决方案3】:

        Git 不是魔法。它不会让您的设计人员使用开发人员积极编写的代码。开发人员仍然必须编写、测试和提交他们的代码,并将其推送到开发人员可以从中提取的地方。

        通常情况下,您将拥有一个“裸”存储库,所有各方在准备好共享工作时将其推送到该存储库。其他人都把这项工作拉下来。可能是设计师的工作,把开发者的工作拉出来,把 dev 分支合并到 ui 分支中,例如:

        git checkout ui
        git fetch
        git merge dev
        

        【讨论】:

          【解决方案4】:

          如果你真的想强制执行分支和路径权限之类的事情,我建议你查看gitolite

          这将允许您管理各种级别的访问。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-03-27
            • 2017-06-17
            • 1970-01-01
            相关资源
            最近更新 更多