Git 工作流
场景
项目已经上线,有用户反馈说我们的程序有bug。同时,产品狗扔下了两个发布时间不一样的需求修复,拍照功能和美颜功能,拍照功能要下一版本发布,美颜功能要下下版本发布
问题
如何修复Bug同时,不影响新功能的开发,并且把两次的需求隔离开来.
解决方案
建立完善的工作流
项目初始化的时候我们新建三个分支,分别是release ,develop和master。同时,项目发布的时候我们要建立tag,通过tag我们找回对应版本的代码。
release 分支
保存可以发布的或者已经发布的代码分支
master 分支
保存着开发好测试过的代码,每次develop上开发好的功能都可以合并到master分支
develop 分支
我们的开发分支,开发过程中分享的代码
有这三个分支的前提下我们就可以从容的应对需求了。
修复线上的bug
从v1.0.0(假设出现问题的就是v1.0.0版本) tag 中 checkout出新的分支,hotfix_xxx, 修复好之后直接合并回去发布
开发拍照功能
直接在develop上开发,开发完成后合并到master上,测试过后就可以合并到release上了
开发美颜功能
从master中新建一个分支,叫feature_pretty ,在这个分支上同步开发,功能要上线的时候再合并到release分支上
这样就比较好的方式解决了上面这个问题了