分支管理策略
在实际开发中,我们应该按照几个基本原则进行分支管理:
- master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面开发。
- dev分支用来开发,所以dev分支是不稳定的,到版本发布的时候,再把dev分支合并到master分支。
- 团队的每个小伙伴都在dev分支上干活,每个人都有自己的分支,经常性地往dev分支上合并就可以了。
长期分支
Git 使用简单的三方合并,可以反复把一个分支合并入另一个分支。 稳定分支的指针总是在提交历史中落后一大截。
主题分支
主题分支对任何规模的项目都适用。 主题分支是一种短期分支,它被用来实现单一特性或其相关工作。
假设你正在dev分支上开发工作(未提交),突然线上有个紧急bug需要处理,那么你可能需要进行以下几个步骤:
- 将当下的工作现场“储藏”:git stash,等以后恢复现场后继续工作
- 切换到稳定的master分支
- 为这个紧急任务新建一个bug分支iss01,并在其中修复它
- 在测试通过之后,切换回线上分支,合并这个bug分支。
- 删除iss01分支,并将master推送到线上。
- 切换回最初的dev开发分支,git stash pop恢复工作现场,并把stash内容删除(注:git stash pop 相当于先执行git stash apply恢复,再执行git stash drop删除)
- 合并master分支到dev分支。
拥有多个主题分支提交历史的看起来像下面的样子: