简版 Git 工作流

3 minute read

目标

  • 支持日常迭代开发,多功能并行开发、紧急线上修复
  • 支持 Code Review
  • 通过 Tag 构建版本体系

完整工作流

Git工作流

masterdevelop为核心分支,进行保护(protected)设置,一般开发者没有写权限,将代码合并到这两个分支成都唯一办法为提交 Pull Request,由负责人 Code Review 通过后,将代码合并。

支持分支有:

  • hotfix(bug 修复)
  • release(版本发布)
  • feature(功能分支) 命名规范为:hotfix-*, release-*, feature-*

功能开发

  1. develop分支创建功能分支feature-xxx;
  2. feature-xxx分支进行功能开发;
  3. 自测通过后发起Pull Request;
  4. Pull Request没有被接受之前,可以继续往feature-xxx分支提交代码,提交的代码会自动进入Pull Request;
  5. Pull Request审查通过,代码合并进develop分支,feature-xxx分支将被删除。

Bug修复

  1. masterrelease-*分支创建新的bugfix-xxx分支;
  2. bugfix-xxx分支上进行开发,修复bug;
  3. 自测通过后,向对应的分支提交Pull Request;
  4. Pull Request审查通过,代码合并进对应分支,bugfix-xxx分支将被删除。

版本发布

  1. develop分支创建发布分支release-xx;
  2. release-xx分支进行完整测试;
  3. 测试过程中仅接受对该分支进行bug修复,即仅允许合并bugfix-*分支的代码;
  4. 测试通过后向master分支发起Pull Request
  5. Pull Request审查通过,代码合并进master分支,打版本 Tag,release-xxx分支将被删除。