如何优雅的用git管理代码仓库?
如今使用git来管理仓库已经成为了主流,那么如何用git优雅的管理你的代码仓库呢?
以下是我整理的一张思维导图。
image.png
这个图的分支介绍:
- master : 待发布分支。
- develop :开发分支。
- dev-czf : 开发人员开发分支。
- dev-czf-profile : 开发人员具体模块分支。
- hotfix: 紧急bug修复分支。
- master v1.0: 发布分支。
- dev-czf-fix-bug: bug修复分支。
- 代码pull request: 开发人员开发分支合并到develop前的代码检查。
接下来对这张图进行拆分讲解:
-
master待发布分支和发布分支
master待发布分支和发布分支
如果确认将要发布版本,则在master上修改项目的版本号之后,切换一个master vxx的分支来待发布。 -
master分支和develop分支的交互
gitflow
develop为开发分支,给出测试版在这个版本上,需要经过多次测试之后才能将代码合并到master。master发布版本之后,develop需要从master更新代码。
-
master v发布分支和hotfix紧急bug修复分支
master v发布分支和hotfix紧急bug修复分支
hotfix分支为紧急bug修复分支,当发布版本发布之后发现了非常严重的bug需要立即修复上线,如果master的版本还是上个版本的代码,则将master代码直接更新到hotfix分支,如果master代码和版本号已经有修改,则找到发布分支上的master vxx ,将发布分支上的代码更新到hotfix,在hotfix上修复了bug之后,再合并到master待发布分支或者已发布版本进行版本迭代。
-
develop开发分支和dev-czf 开发人员开发分支。
develop开发分支和dev-czf 开发人员开发分支。
每个开发者应当在develop分支中新建一个自己的开发分支,这个分支应该需要保证每天去更新一遍develop的代码。当自己的模块开发完毕之后需要将代码提交到develop。但是提交代码前需要提交pull request来邀请同事检查代码、测试,通过pull request之后才能将自己的开发分支合并到develop。如果不需要pull request则直接合并。
新建pull request
将所作的模块和功能写清楚,一般是完成一个模块就去合并一个模块。
检查代码
-
dev-czf 开发人员开发分支和具体开发模块分支
dev-czf 开发人员开发分支和具体开发模块分支
由于一个开发人员往往会同时开发多个模块的情况,所以在开发人员的开发分支上在新建新的模块分支,以保证各个模块开发的时候不产生冲突,如果某个模块已经完成开发,则提交到开发人员开发分支,再由开发分支提交pull request提交到develop分支上。 -
develop开发分支和bug-czf-fix-bug修复分支
develop开发分支和bug-czf-fix-bug修复分支
一般情况,经过测试的测试肯定会测出不少bug,这个时候测试会将bug总汇起来,并分配给各个开发者,开发者从develop上新建一个分支去修复bug,当修复部分bug之后将代码合并到develop上去。
以上为git仓库比较理想的状态,实际开发可能会遇到很多突发情况。git管理的流程并不是定死,分支是可以随便切的,所以有时候需要根据实际情况去处理情况