【问题标题】:How to manage versions of a software in Git at the enterprise situation?如何在企业环境下管理 Git 中的软件版本?
【发布时间】:2012-12-14 22:15:36
【问题描述】:

我想开发一个有两个版本(基本版和专业版)的新项目。
基础版和专业版有一些定制。所以我想我应该如何正确管理分支机构以满足我的要求。
这是我思考的结果:

第二张图片显示了从Version1.0 分支到Release1.0 分支和Master 分支和Version2.0 分支的一些错误修复的更新。
你怎么看?
我如何执行Shift forward... 操作(在第二张图片中)?
(我必须使用 Git)

【问题讨论】:

  • 您是否考虑过使用Feature Toggles 而不是分支代码?
  • 谢谢,但我正在寻找分支解决方案。它更加清晰和简单。
  • 您资助不清楚或复杂的功能切换是什么?根据我的经验,基于分支的“解决方案”会导致巨大的维护开销。
  • 必须严格管理源代码。假设有很多开发人员。这似乎是一个复杂的方式。 source 也会有很多 if-then 子句。如果您有一些在新版本中工作方式不同的功能,您需要保持旧的可用和可用(您需要小心)并使新的也可用。 Git 方式让项目更清晰,适合团队合作。
  • Git 中的短期分支绝对有利于提高生产力。但是,与许多开发人员一起处理大型代码库并拥有长期存在的分支意味着许多开发人员的时间可能会浪费在集成和测试更改上。将所有功能放在一个分支上可以减少这种开销,并使功能所在的位置一目了然。

标签: git version-control development-environment branching-and-merging git-rebase


【解决方案1】:

从 Git 的标准工作流程开始会更容易:git-flow,在此 GitHub repo 中定义。
看到这个Getting Started article

这将同时管理版本功能。

【讨论】:

  • 谢谢。此流程显示任何修补程序的多个合并。由于复杂性,这不是一个好主意。我在哪里可以执行版本定制? (例如 Basic 版本和 Pro 版本。例如在 version1.2 上重复此自定义)不可能将开发版本 1.0 与版本 2.0 隔离开(请注意,一些错误修复是针对 version2.0 中已弃用的某些功能和我想长期支持version1.0)。此外,develop 分支非常不稳定,因为功能开发(导致新错误)。
猜你喜欢
  • 1970-01-01
  • 2014-09-01
  • 1970-01-01
  • 2020-02-22
  • 1970-01-01
  • 2011-04-25
  • 1970-01-01
  • 1970-01-01
  • 2018-10-13
相关资源
最近更新 更多