Github Flow工作流简单介绍(以部署为中心的开发模式)

前言

这篇文章主要介绍Github Flow的理念,以下内容来源于《Github入门与实践》。

Github Flow是以部署为中心的开发模式,通过简单的规则,持续高速且安全地进行部署。而Gitflow则是以发布为中心的分支管理模型,它提供了一种更灵活的方式来管理代码库中的更改。可以参考《Gitflow工作流简单介绍(以发布为中心的开发模式)》

基本概念

整体的开发流程如下,令master分支时常保持可以部署的状态;进行新的作业时要从master分支创建新分支,新分支名称要具有描述性;在新建的本地仓库分支中进行提交;在GitHub端仓库创建同名分支,定期push;需要帮助或反馈时创建Pull Request,以 Pull Request进行交流;让其他开发者进行审查,确认作业完成后与master分支合并;与master分支合并后立刻部署。

由于流程中基本只需为特定作业创建特定分支,从开始作业到进行部署之间的过程十分简单,可以降低开发者学习开发流程的成本。

特点

  1. 随时部署,没有发布的概念
    这个流程必须遵守"令master分支随时保持可以部署的状态",也就意味着每隔几小时就可能进行一次部署,所以不存在发布的概念("发布"是指创建软件版本的过程,使得可以管理和追踪不同版本的软件,并提供用户下载和使用。"部署"是指将软件版本从开发环境转移到生产环境的过程,让软件可以运行在目标平台上,并向用户提供服务)。
    不过要注意,没有进行过测试或者测试未通过的代码绝不可以合并到master分支。因此势必要用到持续集成等手段。
  2. 进行新的作业时要从master分支创建新分支
  3. 在新创建的分支上进行细粒度的提交
    有意识地减小提交规模,一方面便于清楚地表达目的,另一方面有助于其它开发者对Pull Request进行审查。
相关推荐
课堂随想6 小时前
【git】通过配置 `init.defaultBranch`,自定义 Git 初始化时的默认分支名称,避免使用 `master` 并消除相关的警告提示
git
qq_377572779 小时前
github 远程仓库删除 本地重新上传
git
缘友一世10 小时前
macos安装git并连接gitCode远程仓库
git·macos·gitcode
熬夜学编程的小王13 小时前
C++类与对象深度解析(一):从抽象到实践的全面入门指南
c++·git·算法
课堂随想14 小时前
SHA-1 是一种不可逆的、固定长度的哈希函数,在 Git 等场景用于生成唯一的标识符来管理对象和数据完整性
git·哈希算法
易雪寒17 小时前
IDEA在git提交时添加忽略文件
java·git·intellij-idea
徒步僧18 小时前
mac中文件夹怎么显示.git隐藏文件
git·macos
int WINGsssss2 天前
Git使用
git
用户0760530354382 天前
Git Revert:安全移除错误提交的方式
git
Good_Starry2 天前
Git介绍--github/gitee/gitlab使用
git·gitee·gitlab·github