介绍

已完成

有效的 Git 分支策略是大规模成功交付软件的基础。 本模块提供有关设计和实现支持持续交付、团队协作和质量保证的分支工作流的综合指导。 你将了解如何为组织的需求选择和实施正确的分支模型,无论是与小型敏捷团队还是大型企业开发组织合作。

分支策略为何重要

新式软件开发团队需要分支策略来平衡几个关键问题:

  • 开发速度:使团队能够独立工作,而不会相互阻止。
  • 质量保证:通过系统审查和测试过程维护代码质量。
  • 发布管理:支持可预测的可靠软件版本。
  • 风险缓解:隔离实验性工作并提供回滚功能。
  • 合规性要求:满足变更管理的审核和法规标准。

企业分支策略框架

分支模型选择的战略注意事项:

因素 对策略的影响 关键问题
团队大小 协调复杂性和合并频率 有多少开发人员同时工作?
发布节奏 分支生命周期和集成时间 部署到生产环境的频率有多高?
质量要求 审核流程和测试集成 需要哪种级别的质量关卡?
合规性需求 审核线索和审批工作流 哪些法规要求适用?

Microsoft自己的开发团队大规模演示了这些原则,将 GitHub Flow 用于需要快速部署的服务,并为需要广泛测试周期的企业产品采用更结构化的方法。

全面的学习目标

完成本模块后,你将掌握基本分支策略并能够:

战略分支设计:

  • 根据团队大小、发布节奏和质量要求评估并选择适当的 Git 分支工作流。
  • 设计支持 持续交付的分支策略,同时维护代码质量和合规性标准。
  • 实施企业级 分支策略和治理框架。

实用实现技能:

  • 使用适当的隔离、评审过程和集成策略实现功能分支工作流
  • 配置和管理 GitHub Flow 适用于需要快速持续部署的团队。
  • 为开源项目和分布式团队协作执行分叉工作流
  • 建立分支保护和合并限制,以确保遵循质量门槛和审查要求。

平台专业知识:

  • 利用 Azure Repos 的高级分支功能来优化企业级开发环境。
  • 将分支策略 与 CI/CD 管道和自动化测试框架集成。
  • 监视和优化 分支工作流,以提高团队工作效率和交付速度。

自我评估:评估分支准备情况

Git 基础知识

  • [ ] 你是否了解 Git 基础知识,如提交、分支和合并?
  • [ ] 你是否熟悉分布式版本控制概念?
  • [ ] 是否知道如何解决合并冲突?

团队开发体验

  • [ ] 你是否在团队中使用了共享存储库?
  • [ ] 是否了解代码评审过程和拉取请求?
  • [ ] 你是否熟悉持续集成概念?

组织上下文

  • [ ] 你的团队是否具有特定的发布计划或合规性要求?
  • [ ] 是否与跨时区的分布式团队合作?
  • [ ] 是否需要与多个团队或外部参与者协调?

先决条件和准备

基本知识:

  • DevOps 基础知识:了解 DevOps 原则、持续集成和交付概念。
  • 版本控制基础知识:熟悉版本控制原则(这一知识有益,但我们会提供全面的审查)。
  • 软件开发体验:基于团队的软件开发环境中的背景。

建议的体验:

  • Git 命令行:基本熟悉 Git 命令和概念。
  • 拉取请求工作流:体验代码评审过程。
  • CI/CD 认知:了解自动化构建和部署过程。

所需的设置:

  • Git 安装:确保在开发环境中安装和配置 Git。
  • GitHub 帐户:使用新式分支工作流访问 GitHub 进行实践练习。
  • Azure DevOps 访问:用于 Azure Repos 练习的组织访问权限(可在模块学习期间创建)。