git分支管理

如果你想成为一个健壮的程序员,那么你一定要使用代码管理工具,而大神linus创造的git(饭桶)是首选的代码管理工作(没有之一)。下面要介绍的是我个人的分支管理使用方式:
git分支有三种,分别是开发分支稳定分支临时分支

  • 开发分支
  • 稳定分支
  • 临时分支

一、开发分支

因为习惯在master分支下提交代码,所以使用master为开发分支。

二、稳定分支

所有程序的发布,都是在stable分支上进行发布的。每成功发布一次,在对应版本上打上tag。
理论上不会在稳定分支上进行任何开发。stable分支上的代码都是从其他分支合并过来的。

三、临时分支

临时分支分为功能分支预发布分支修复bug分支

1.功能分支

第一种是功能分支,拉取此分支的一个目的是为了保持开发分支的相对稳定,甚至达到随时可以交付的程度。因为在开发新的功能点时,或者对系统进行重构时,代码会进入一个严重不稳定状态。

创建一个功能分支并切换到该分支

git checkout -b feature-new master

开发完成后,将分支上的代码合入开发分支

git checkout master
git merge --no-ff feature-new  # 使用--no-ff会在合并分支时,生成一条合并记录。

合并完成后,删除功能分支

git branch -d feature-new

170504新增
当功能分支开发完成后,为了避免将功能分支直接合入开发分支,产生过多冲突,合并后代码不稳定。可以选择先将master分支的修改合入功能分支,待功能分支上合并冲突测试稳定后再合入master分支。

2.预发布分支

第二种是预发布分支。在将开发分支中的信息合入稳定分支之前,需要一个预发布版本进行测试。

创建一个预发布分支

git checkout -b pre-stable-v1.05.0201 master

测试完成后,进入stable分支,将预发布分支合入

git checkout stable
git merge --no-ff pre-stable-v1.05.0201
对合并生成的新节点,打一个标签
git tag -a stable-v1.05.0201

然后,进入master分支,将预发布分支合入(测试过程中可能会修改代码)

git checkout master
git merge --no-ff pre-stable-v1.05.0201

删除预发布分支

git branch -d pre-stable-v1.05.0201

3.修复bug分支

第三种是修复bug分支。在稳定分支上难免会出现bug,此时需要在稳定分支上拉取bug修复分支进行bug修复。

git checkout stable
git checkout -b fixbug-v1.05.0201 stable

修复bug后,合入stable分支

git checkout stable
git merge --no-ff fixbug-v1.05.0201

合入开发分支master

git checkout master
git merge --no-ff fixbug-v1.05.0201

最后,删除修复bug分支

git branch -d bugfix-v1.05.0201

PS:

1.如果是github上的开源项目,请使用master为稳定分支,另起一个develop分支。
2.参考:git分支管理策略

你可能感兴趣的:(git分支管理)