聊聊比较健康的分支管理

feature 介绍

  • 一条 feature分支(又称变更分支、开发分支),通常用来承载一个缺陷的修复,或者一个需求(如果不是很大的话)的开发,或者任务分解后一个任务的开发。
  • 一般来讲,基于 master 分支最新版本来创建 feature 分支。然后在 feature 分支上开发、测试,直到这个 feature功能完成,质量验收通过,再去集成和发布。

release 分支上的集成

  • release 分支用于集成和发布。
  • 基于 master 分支最新版本创建一条 release
    分支,然后把想要集成的各条feature分支合并到这条release分支,进行部署和测试工作。
  • 如果有新的 feature 分支要加入本次集成,那就把它也合并进这条 release 分支,然后再次部署并测试。
  • 如果测试发现问题,就到 feature 分支上修复,然后把它再次合并到 release 分支,把修复带到 release 分支。
  • 当然如果一个 feature 的问题太多太大,那干脆就放弃它。也就是说,新建一条 release 分支,把其他 feature分支都合并过去,唯独不再合并这条 feature 分支。
  • 就像 master 分支一样,release 分支也是由系统自动管理的。使用者不要直接在上面改代码,代码修改请总是在 feature分支完成。

release 分支上的发布上线

  • 当 release 分支上的质量足够好,本次想上线的功能也都具备之后,就可以考虑发布上线的问题。
  • 发布上线前,会确保它基于基础分支(常见的如 master )最新。而发布后会把 release 分支合并回 master,让 master分支代表最新发布版本。

你可能感兴趣的:(测试开发必备,github,git)