远程长期存在两个分支.
1. master 主分支 : 存放对外发布的版本,任何时候在这个分支拿到的,都是稳定的发布版 2. dev 开发分支: 用于日常开发,存放最新的开发版。
在工作开发中,即本地使用三者功能分支.
1. feature branch 功能分支 2. hotfix branch 补丁分支 3. release branch 预发分支
在上面的分支开发时候统一命名规范:feature-xxx、release-xxx、hotfix-xxx.
功能分支
当你接受去开发一个需求,或者不是一个较长时间的bug修复,那么就应该从 dev 开一个分支出来,完成这部分工作。完成后合并到 dev分支。
补丁分支
线上出了bug,并且必须马上修复.
它与release分支很像,都需要完成后,同时合并到:master与dev。不同的是,它需要从master 上开一个分支出来。
预发分支
1. 这个分支是为预发准备的
2. 测试的介入,也只应该在该分支产生时才介入。 测试不应该参与到每个分支中来,只应该参与到release分支中去。其它的开发分支,都应该由开发人员自己测试
3. 当我们不管是新功能开发,还是一般的bug修改都差不多了。就应该从dev产生一个release分支,交给测试,如果有bug直接在上面修改。全部完成后,合并回dev,并且合并到master。
推荐阅读:
阮一峰的git工作流