开发隔离分支策略:分支的起源?
Development Isolation branch strategy: Origin for branching?
我们有两家分店; Development(开发人员定期 check/integrate 进入)和 Main(Development 的代码合并到 versioning/releasing)。
阅读分支"strategies"/"best practices"时,据说开发必须是[=41=的分支] 主要。 开发必须从分支主要。
例如,在阅读 VS ALM Ranger 的 Branching Strategies document 中的开发隔离时,它说明了如何 "the development branch should be a full child branch of the main branch"。
为什么 Main 不能成为 Development 的完整分支?根据我的理解,Development 几乎总是包含 Main 的所有内容(不包括修补程序)。
从 Development 合并到 Main 是更常见的情况。在这种情况下哪个是 "original" 哪个是分支甚至重要吗?
注意:我们正在使用 Visual Studio 团队服务
在我使用 TFS 的所有经验中,我们使用以下架构:
-主分支(该分支将反映当前部署的代码)
--Staging Branch(此分支将充当 QA 的测试环境。如果它对您的情况没有意义,可以将其删除。)
---开发分支(这是开发人员将定期检查的分支。)
我们进行此设置的原因是 主分支 将反映服务器上当前部署的代码。这样,如果我们确实需要进行热修复,它可以完全与当前的开发周期隔离开来,因此我们正在进行的任何工作都不会潜入修复中。
暂存分支 基本上是您的 QA 部门执行验证的地方。有些组织对此有不同的处理方式,因此这可能不适用于您的情况。
开发分支将是最"experimental"分支。这最有可能出现错误和一般开发人员的恶作剧。我们将这个分支放在底部,因为如果开发人员发现 him/herself 出于任何原因需要在开发分支之外创建一个分支,那么信息流将是有意义的。向上合并推送更改,向下合并获取更新的更改。
我偶然发现了这个 post,它对最佳合并实践有更好的解释。这应该回答我介绍的任何混淆 (:
TFS: Merge best practices
我们有两家分店; Development(开发人员定期 check/integrate 进入)和 Main(Development 的代码合并到 versioning/releasing)。
阅读分支"strategies"/"best practices"时,据说开发必须是[=41=的分支] 主要。 开发必须从分支主要。
例如,在阅读 VS ALM Ranger 的 Branching Strategies document 中的开发隔离时,它说明了如何 "the development branch should be a full child branch of the main branch"。
为什么 Main 不能成为 Development 的完整分支?根据我的理解,Development 几乎总是包含 Main 的所有内容(不包括修补程序)。
从 Development 合并到 Main 是更常见的情况。在这种情况下哪个是 "original" 哪个是分支甚至重要吗?
注意:我们正在使用 Visual Studio 团队服务
在我使用 TFS 的所有经验中,我们使用以下架构:
-主分支(该分支将反映当前部署的代码)
--Staging Branch(此分支将充当 QA 的测试环境。如果它对您的情况没有意义,可以将其删除。)
---开发分支(这是开发人员将定期检查的分支。)
我们进行此设置的原因是 主分支 将反映服务器上当前部署的代码。这样,如果我们确实需要进行热修复,它可以完全与当前的开发周期隔离开来,因此我们正在进行的任何工作都不会潜入修复中。
暂存分支 基本上是您的 QA 部门执行验证的地方。有些组织对此有不同的处理方式,因此这可能不适用于您的情况。
开发分支将是最"experimental"分支。这最有可能出现错误和一般开发人员的恶作剧。我们将这个分支放在底部,因为如果开发人员发现 him/herself 出于任何原因需要在开发分支之外创建一个分支,那么信息流将是有意义的。向上合并推送更改,向下合并获取更新的更改。
我偶然发现了这个 post,它对最佳合并实践有更好的解释。这应该回答我介绍的任何混淆 (:
TFS: Merge best practices