如何优雅的用git管理代码仓库?

作者: AxeChen | 来源:发表于2018-09-19 11:16 被阅读1132次

    如今使用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
    将所作的模块和功能写清楚,一般是完成一个模块就去合并一个模块。

    image.png

    检查代码

    image.png
    • 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管理的流程并不是定死,分支是可以随便切的,所以有时候需要根据实际情况去处理情况

    相关文章

      网友评论

      • 流沙飞雪:正常情况下,流程没有问题,可是实际过程中,会有很多功能被推迟上线,或者上线失败,回退,这种流程中,所以提测版本都被合并到develop,就意味着测试不能同时对两个功能进行测试,需要串行,如果遇到推迟上线,还需要回退版本,还是很麻烦。
        AxeChen:@流沙飞雪 哈哈,这些特殊情况当然要看情况处理啦,流程不是定死的,可以看实际情况做出不同的改变和处理的。我写的内容是处于比较理想的情况。
      • 谢千域:大神顶起!

      本文标题:如何优雅的用git管理代码仓库?

      本文链接:https://www.haomeiwen.com/subject/ksupnftx.html