当前位置: 首页 > news >正文

Release It! 自动化版本管理和发布工具终极指南

Release It! 自动化版本管理和发布工具终极指南

【免费下载链接】release-it🚀 Automate versioning and package publishing项目地址: https://gitcode.com/gh_mirrors/re/release-it

Release It! 是一款强大的通用 CLI 工具,能够自动化版本管理和与包发布相关的各种任务,帮助开发者轻松实现版本控制、发布流程的自动化,显著提升开发效率。无论是小型项目还是大型应用,它都能为你简化发布过程,让你专注于代码开发而非繁琐的发布操作。

快速安装:三步开启自动化发布之旅

一键初始化安装

最推荐的安装方式是使用 npm 快速初始化,它会自动添加基本配置,让你轻松上手:

npm init release-it

手动安装并配置

如果你偏好手动安装,可以通过以下命令将其添加为开发依赖:

npm install -D release-it

然后在package.json中添加release脚本:

{ "name": "my-package", "version": "1.0.0", "scripts": { "release": "release-it" }, "devDependencies": { "release-it": "^19.0.0" } }

全局安装与其他包管理器支持

除了项目内安装,你也可以选择全局安装:

  • 从 npm 安装:npm install -g release-it
  • 使用 Homebrew:brew install release-it

如果你使用 Yarn 或 pnpm,也有相应的支持方案:

  • Yarn 用户可参考 npm 部分关于 Yarn 的说明
  • pnpm 用户可使用 release-it-pnpm 插件

简单易用:两种使用模式满足不同场景

交互式模式:直观控制每一步

默认情况下,Release It! 采用交互式模式,会在执行每个任务前提示你确认,让你对发布过程有完全的掌控。

CI 模式:自动化环境的理想选择

在持续集成(CI)环境中,Release It! 会自动激活非交互式模式,无需人工干预即可完成整个发布流程。你也可以通过--ci选项手动启用此模式,例如:

release-it --ci

若只想通过提示确定版本,而自动化其余步骤,可使用--only-version选项。

核心功能:全方位覆盖发布需求

版本管理与 Git 集成

Release It! 能自动处理版本号的更新,并与 Git 无缝集成,包括提交更改、创建标签和推送到远程仓库。你可以通过配置自定义提交消息,例如在.release-it.json中设置:

{ "git": { "commitMessage": "chore: release v${version}" } }

发布到 npm registry

对于包含package.json的项目,Release It! 会自动更新其中的版本号,并将包发布到 npm registry。2025 年 7 月起,GitHub 和 GitLab CI 工作流还可利用 npm 的 Trusted Publishing OpenID Connect (OIDC) 集成,实现安全、无令牌发布。

生成变更日志

默认情况下,Release It! 会基于git log生成变更日志,用于展示和选择新版本。你也可以通过配置git.changelog来自定义变更日志的生成方式,还能为 GitHub 或 GitLab 发布设置专门的发布说明。

创建 GitHub/GitLab 发布

Release It! 支持自动化创建 GitHub 或 GitLab 发布,包括附加发布说明和资产。以 GitHub 为例,只需在配置中设置"github": { "release": true },并确保GITHUB_TOKEN环境变量可用。

管理预发布版本

轻松创建预发布版本,如 alpha、beta 或 rc(发布候选版)。例如,发布 beta 版本:

release-it major --preRelease=beta

这将创建版本2.0.0-beta.0,后续可通过release-it --preRelease发布2.0.0-beta.1等后续版本。

灵活配置:打造专属发布流程

多种配置文件格式

Release It! 支持多种配置文件格式,你可以选择自己熟悉的方式进行配置,包括:

  • .release-it.json
  • .release-it.ts
  • .release-it.js(或.cjs)
  • .release-it.yaml(或.yml)
  • .release-it.toml
  • package.json中的release-it属性

配置示例

以下是一个简单的.release-it.json配置示例:

{ "$schema": "https://unpkg.com/release-it@19/schema/release-it.json", "git": { "commitMessage": "chore: release v${version}" }, "github": { "release": true } }

命令行选项

任何配置选项都可以通过命令行设置,且优先级最高。例如:

release-it minor --git.requireBranch=main --github.release

布尔参数可以使用no-前缀来取反,如--no-npm.publish

高级扩展:插件与钩子

丰富的插件生态

Release It! 拥有强大的插件系统,可通过插件扩展其功能。部分热门插件包括:

  • @release-it/bumper:从/向任何文件读取/写入版本
  • @release-it/conventional-changelog:提供推荐的版本更新、生成符合约定的变更日志
  • @release-it/keep-a-changelog:按照 Keep a Changelog 标准维护变更日志

自定义钩子

使用脚本钩子可以在发布过程的任何时刻运行 shell 命令,例如在初始化前运行测试:

{ "hooks": { "before:init": ["npm run lint", "npm test"], "after:release": "echo Successfully released ${name} v${version}!" } }

总结

Release It! 是一款功能全面、灵活易用的自动化版本管理和发布工具,它能够帮助开发者简化发布流程,提高工作效率。无论是小型个人项目还是大型企业应用,都能从中受益。通过简单的配置和丰富的功能,你可以轻松实现版本控制、变更日志生成、发布到各种平台等操作,让发布工作变得前所未有的简单!

【免费下载链接】release-it🚀 Automate versioning and package publishing项目地址: https://gitcode.com/gh_mirrors/re/release-it

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/463584/

相关文章:

  • 终极跨平台影音中心搭建指南:ZyPlayer高效使用手册
  • 智能简历投递:终极求职自动化解决方案
  • 终极指南:如何用PartCrafter实现AI驱动的单照片3D建模技术,从拍照到三维模型的革命性转变
  • libpag:跨平台动画渲染的革命性突破
  • 告别广告烦恼:SmartTube打造Android TV无广告观影终极体验
  • 7个Ghidra性能突破:让大型二进制文件分析速度提升300%的终极指南
  • 终极API模拟神器Mockoon:5个步骤让前端开发效率提升300%
  • PakePlus:9分钟将网页转为跨平台应用的终极指南
  • ScanTailor Advanced:专业级扫描文档优化神器,让模糊变清晰只需一键
  • 如何高效使用Unity.Mathematics:打造高性能游戏数学计算的终极指南
  • Windows字体安装革命:告别繁琐的一键解决方案
  • 如何让PDF色彩显示与打印一致?Stirling-PDF的终极色彩管理指南
  • 5个PDF字体优化技巧:从字符渲染到性能调优的完整指南
  • ffsubsync:自动字幕同步的终极解决方案
  • 7个实用技巧快速掌握React 360:从零构建惊艳VR交互体验
  • 3步搞定C++测试:Catch2 CMake零配置集成全攻略
  • Obsidian美化终极指南:从默认界面到个性化工作台的完整教程
  • Method Draw终极指南:简单上手的免费SVG编辑器完整教程
  • 终极AI工程系统架构实战指南:从理论到落地的完整解决方案
  • 解锁数字雕塑艺术:SculptGL免费3D雕刻工具创意指南
  • 5分钟搞定MineContext Docker部署:从零到一的完整指南
  • MouseInc.Settings:重新定义你的鼠标操作效率
  • 如何解决AtlasOS软件安装故障:从权限修复到系统优化的完整指南
  • 为什么PINNpapers是科学计算的终极资源库?探索物理知情神经网络的必备指南
  • 终极指南:LMMS开源音乐制作软件从社区驱动到专业工具的完整发展历程
  • 终极视频稳定指南:免费陀螺仪工具Gyroflow实战教程
  • Diffy:Ruby差异比较神器快速上手指南
  • Resilience4j熔断监控终极指南:从零搭建微服务健康看板
  • Windows 11界面困扰终极解决方案:一键恢复经典工作环境
  • 123云盘脚本终极指南:一键解锁完整会员体验