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

除了SVN,您如何管理您的开发、测试和生产源代码?

  •  1
  • mohdajami  · 技术社区  · 16 年前

    我正在开发一个非常大的项目,包含三个阶段的源代码。

    • 开发源代码:每秒快速更改,并由我们的QA检查
    • 测试环境代码:发布给客户质量保证部(每2-3周发布一次)
    • 生产环境:经客户质量保证部确认无误后,放行给生产部(每几个月一次)

    系统(政府Web应用程序)非常大,可以跟踪更改、错误和修复,有时测试人员可以请求更改,有时生产部门可以请求热修复或小更新。

    问题是,当测试或生产请求更改时,开发代码已经更改了很多,并且他们总是警告我们,他们只需要那个小补丁,不要上传任何新的补丁。

    问题是,我应该如何管理这三个阶段的代码,并返回到测试或生产代码,任何连接和修复这一小问题(也反映了对当前开发的更改)?

    注: 每次创建一个分支都太多了,我不希望开发人员在更新主流、分支和测试代码之间迷失方向!

    4 回复  |  直到 16 年前
        1
  •  4
  •   Padmarag    16 年前

    从提供给测试或生产的特定版本签出,然后将更改合并回dev。

        2
  •  2
  •   Steve Robillard    16 年前

    而不是为每个请求分支主干(这将包括与QuickChange或Fix无关的新代码),如果您从prod标签分支并进行了更改,然后测试、QA并重新部署它,该怎么办?

        3
  •  2
  •   GandalfIX    16 年前

    实际上我认为你应该有三个分支 *开发(主干) *质量保证 *产品

    合并是“非常容易的”(很容易合并),因为您总是需要从QA到DEV、从Prod到DEV进行合并。 这是我们在许多项目中使用的非常常见的设置。

    编辑: 通常情况下,您不会在QA或Prod上再次分支。

        4
  •  1
  •   Stephen C    16 年前

    每次创建一个分支都太多了,我不希望开发人员在更新主流、分支和测试代码之间迷失方向!

    对于每个补丁,从主干分支是不必要的(并且它不会做您的测试/产品开发团队需要的事情)。但是,您不能完全避免分支,也不能避免您的员工必须在多个分支中工作。

    您应该能够将活动分支的数量降到(比如)一个(对于在生产中运行的版本),另一个(对于测试人员正在处理的版本)。