随着前端技术的不断发展,我们的代码库也越来越庞大复杂,如何管理版本成为了一个很重要的问题。现在,我们有一个非常方便且实用的工具——npm 包 versionist-plugins,它可以很好地管理我们的版本,并且能够自动生成 Changelog,可以帮助我们节省很多时间。
什么是 versionist-plugins
versionist-plugins 是一个 npm 包,它基于 versionist 这个工具,可以自动升级项目中的版本以及自动生成 Change log,一键完成管理版本的工作。versionist-plugins 提供很多自定义插件,可以根据业务需要快速定制版本管理规则。
如何安装 versionist-plugins
使用以下命令进行安装:
npm install versionist-plugin --save-dev
如何使用 versionist-plugins
- 在项目根目录新建 versionist.json 配置文件:
-- -------------------- ---- ------- - ----------- --------------- -------- -------- ------ ------- -------- ----------- ------- ------- -------- ----- -------- ---------- ---------- - ------- - -------------- ------- -- ------ - -------------- ----- ---- -- ------- - -------------- ------ -- -------- - -------------- ------ -- ----------- - -------------- ------ -- ------- - -------------- ------ -- ------- - -------------- -------- -- -------- - -------------- ------- -- ----- - -------------- --- -- ----- -- -------- - -------------- ---------- -- --------- - -------------- ------ - -- ---------- - -------------------- - --------- --------- - - -
上面这份配置文件是一个用于 Angular 项目的示例, versionist-plugins 内置了很多预设的配置供我们选择,此处我们以 Angular 为例进行说明。
- 新建模板文件 template.hbs:
-- -------------------- ---- ------- - -------- ------- --- -------- ------- ---------- -- ----------- ---------- ------- -------------- --- --------- ------- --------- - ----- --------------------------------- --------------------------- ----- --------------------------- ------------------------ ------------------------------------------------------------------ ----------------------------- -------- ---------------------------- --------- --------- ----- ------------ ------- ------------ ---------- --------- ------- ---------
这是模板文件 template.hbs 的模板代码。
- 在 package.json 中添加一条命令:
{ "scripts": { "release": "versionist" } }
至此,我们就完成了 versionist-plugins 的配置。下面我们来看一下使用方法。
- 在项目根目录执行以下命令:
npm run release
这时,versionist 会进行版本升级,自动生成 changelog,并把新版本提交到 Git,同时会返回最新的版本号,如:v1.1.0。
深入理解 versionist-plugins
versionist-plugins 主要依赖于 versionist,它可以通过自定义的插件,规定版本号的升级策略,只要我们按照规定的提交格式,就能够自动升级版本号。
下面我们来了解一下 versionist-plugins 的配置项:
- types
types 配置项是必须的,它定义了我们任务中常用的 commit 类型,如:feat 新功能、fix 修复 bug、docs 修改文档、style 修改样式等等。我们在进行代码提交时,必须按照这些类型来进行。
- actions
actions 配置项也是必须的,它定义了 types 中每个类型对应的描述,如:feat 添加新功能、fix 修复一个 bug。这样,在生成 changelog 的时候,就可以根据不同类型对应不同描述进行生成。
- plugins
plugins 配置项可以配置我们需要的插件信息。versionist-plugins 内置了很多预设的插件,如:preset、semver、date、notes 等等。在产生 changelog 的时候,我们可以根据需要选用不同的插件。
- template
template 配置项是模板文件,我们需要根据项目需要自定义模板文件,以生成更加符合项目风格的 changelog。
versionist-plugins 的学习和指导意义
versionist-plugins 的使用极大地降低了管理版本的难度,能够帮助我们快速生成 changelog,自动升级版本号。在团队协作开发中,有了 versionist-plugins,代码管理会更加规范化,有助于代码的维护和后期升级。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056bcc81e8991b448e56fd