wangjie-fourth 的个人博客

记录精彩的程序人生

目录
Git的工作模式总结
/    

Git的工作模式总结

Git是编程项目常用的代码版本管理工具,在日常开发时,我们会通过规定的方式来开发软件。这里介绍一下俩个我常用的开发模式的工作流程。

  • Git Flow:以发布为中心的开发模式,工作常用
  • GitHub Flow:以部署为中心的开发模式,个人开发常用

以发布为中心的开发模式:Git Flow

1、由来
这个模式是由荷兰程序员Vincent Driessen在其博客上介绍的一种开发模式,被称为A successful Git branching model,是在软件开发,以及日常工作中常用的一种开发模式。
2、工作流程
这张图介绍了这种开发模式的工作流程。
image.png
(1)分支介绍

  • master branches:用于正式运行的分支,该分支上的代码建议打上标签
  • release branches:用于处理发布各项工作的分支
  • bugFixes branches:修改bug分支,一般是在打了标签版本的基础上进行修改
  • develop branch:开发分支
  • feature branches:工作分支

(2)工作流程

  • develop分支新建feature分支,在这个分支进行功能的实现或修正;
  • feature分支的任务完成后,与develop分支进行合并;
  • 重复上面俩个步骤,直到实现的功能可以发布为止;
  • 创建release分支,将develop分支上的代码拷贝到当前分支上;
  • release分支处理完发布分支后,让其与master分支进行合并,并打上标签发布;
  • 如果发布的软件出现BUG,在打了标签的版本为基础进行修改;
  • 修改BUG后,再与masterdevelop分支进行合并;

(3)Tag的版本定义

  • 仅仅出现小bug的话,只需要在其上添加0.1即可。

GitHub Flow:以部署为中心的开发模式

1、由来
这是GitHub公司自己使用一种开发模式。其优点就是简单、明了,但是对测试、部署要求是完全自动化,否则用起来还是繁琐的。
2、工作流程
这张图介绍这种开发模式的工作流程。
image.png
(1)分支介绍

  • master branch:发布分支
  • bugFix branches:修复bug的分支
  • feature branch:功能分支

(2)工作流程

  • master分支上新建feature分支,在其分支进行功能开发或修改;
  • feature分支代码完成后,通过pr将其与master分支代码进行合并;
  • master分支上代码出现BUG时,就在master进行修改;

3、未完工作

  • 本地开发配置代码检查工作。如:Checkstylespotbugs
  • GitHub配置代码检查工具。如:CircleCI
  • 数据库版本控制工具。如:Flyway

4、注意事项【未完成】

  • 以功能通过PR进行开发;
    • 定期push,尽量不要积累很多修改后再提交;

标题:Git的工作模式总结
作者:wangjie-fourth
地址:https://wangjie.natappvip.cc/articles/2019/11/01/1572576275400.html

评论