2022-12-10
前端工程化
00

目录

1. Git flow 规范
2. Git commit 规范
2. commitizen 工具

1. Git flow 规范

Git 作为一个源码管理的工具,不可避免的会涉及到多人的协作,协作必须有一个规范的工作流程,让大家有效的合作使得项目井井有条的发展下去。

工作流程在英语中叫 Workflow

原意是水流,比喻项目想水流哪像自然的流动,不会发生冲击、对撞甚至旋涡。

Git flow 是最早诞生,并广泛采用的一种工作流,它采用了功能驱动开发(Feature-driven development,简称FDD),它指的是需求是开发的起点,现有需求再有功能分支

image.png

Git flow 最主要的特点有两个

  1. 项目始终存在两个长期分支 master(主分支)develop(开发分支)
  2. 除此之外,还有三个短期分支 feature(功能分支) hotfix(补丁分支) release(预发分支)

image.png

分支描述
master产品分支:只能从其他分支合并内容,不能再这个分支直接修改。合并到 maters 上的 commit 只能来自 release 分支或 hotfix 分支。
develop开发主干分支:基于 mastertag 建立,主要用来暂时保存开发完成而又未发布的 feature 分支内容,以及 releasehotfix 的补充内容
feature功能分支:一般一个新功能对应一个功能分支,从而和已经完成的功能隔离开来,而且只有在新功能完成开发的情况下,其对应的 feature 分支才会合并到主开发分支( develop 分支)上
release预发分支:当需要发布时,我们从 develop 分支创建一个 release 分支,然后这个release 分支会发布到测试环境进行测试,如果发现问题就在这个分支直接进行修复。发布结束后,这个 release 分支会合并到 developmaster 分支,从而保证不会有代码丢失。
hotfix补丁分支:主要用于紧急修复一些 Bug。会从 master 分支上的某个 tag 建立,修复结束后再合并到 developmaster 分支上

image.png

2. Git commit 规范

写好 Git commit 能提供更多的而历史信息,方便快速浏览,还能过滤某些 commit(比如文档改动),便于快速查找信息。

如何优雅写好Git commit规范呢? 现在业界使用比较广泛的是 Angular规范

<type>(<scope>):<subject> # 标题行:必填描述主要修改类型和内容。 // 空行 <body> # 主题内容:描述为什么修改,做了什么样的修改,以及开发的思路等等。 // 空行 <footer> 放 Breaking Changes 或 Closed Issued

1. type 类型有:

Type作用
feat新增特性 (feature)
fix修复 Bug(bug fix)
docs修改文档 (documentation)
style代码格式修改(white-space, formatting, missing semi colons, etc)
refactor代码重构(refactor)
perf改善性能(A code change that improves performance)
test测试(when adding missing tests)
build变更项目构建或外部依赖(例如 scopes: webpack、gulp、npm 等)
ci更改持续集成软件的配置文件和 package 中的 scripts 命令,例如 scopes: Travis, Circle 等
chore变更构建流程或辅助工具(比如更改测试环境)
revert代码回退
  1. scope 影响范围

比如L route,component,utils,build

  1. subject:commit的描述
  2. body:commit具体修改内容,可以分为多行
  3. footer: 一些备注

2. commitizen 工具

1. 简介 commitizen git commit 的格式化工具,为我们提供标准化的 commit 信息。 帮助我们统一项目commit , 便于信息的回溯或日志的生成。# commit message 格式

2. 安装

npm install -g commitizen cz-conventional-changelog echo '{"path": "cz-conventional-changelog"}' > ~/.czrc

3. 使用

在文件夹中修改内容

git add * git cz

具体操作步骤可以参考 规范(三):从 0 搭建 React+TS 项目 第七章 Git Commit 规范

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:叶继伟

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!