Git:工作流程分支合并

Lasted 2020-01-16 21:56:13

Git 工作流程规范简单介绍。

分支结构

master

  • 主要分支:用于部署生产环境,需确保 master 分支的稳定性。
  • master 存储正式发布的历史版本。
  • 属于唯一只读分支,一般只能从其他分支(release、hotfix)合并,不能直接修改 push。
  • release 或者 hotfix 时需要打 tag 标签做记录,方便追溯。

develop

  • 开发分支:基于 master 分支检出的平行分支。
  • 始终保持最新完成和 bug 修复后合并的代码。
  • 属于只读分支,可以从(feature,release 和 hotfix)合并。

feature

  • 功能分支:从 develop 分支检出,用于开发某个新功能。
  • feature 分支可同时存在多个。
  • 属于临时分支,最终会被合并回 develop 分支或者丢弃,最后删除。
  • feature 通常仅存在开发人员本地库中,而不提交到远程仓库。

release

  • 发布分支:从 develop 分支检出,用于准备发布新阶段版本。
  • 用于 Bug 测试及修复,文档生成和其他面向发布任务。
  • 属于临时分支,最终会先被合并到 master,打 tag 标签,再被合并到 develop,最后可选删除。
  • 命名规则:release-*release/v1.0

hotfix

  • 补丁分支:基于 master 分支检出,用于对线上发布的版本进行 bug 修复。
  • 属于临时分支,最终会先被合并到 master,打 tag 标签,再被合并到 develop,最后可选删除。
  • 命名规则:hotfix-*hotfix/v1.0.1

推荐使用 SourceTree 免费图形管理工具,提供 Windows 和 Mac 版本,可以很方便实现 git flow 管理,不同分支很方便检出、合并等操作。