integration-test-mcp
Version:
MCP服务器用于集成测试
124 lines (86 loc) • 3.12 kB
Markdown
# 发布脚本使用指南
这个发布脚本可以帮助您自动化版本更新和 npm 包发布流程。
## 功能特性
- ✅ 自动更新版本号(patch/minor/major/prerelease)
- ✅ 自动构建项目
- ✅ 发布到 npm
- ✅ 创建 Git 标签
- ✅ 支持模拟运行
- ✅ 错误回滚机制
- ✅ 彩色输出日志
## 快速开始
### 1. 基本发布(patch 版本)
```bash
npm run release
```
### 2. 指定版本类型发布
```bash
# 发布patch版本 (1.0.0 -> 1.0.1)
npm run publish:patch
# 发布minor版本 (1.0.0 -> 1.1.0)
npm run publish:minor
# 发布major版本 (1.0.0 -> 2.0.0)
npm run publish:major
# 发布预发布版本 (1.0.0 -> 1.0.1-0)
npm run publish:prerelease
```
### 3. 模拟运行(不实际发布)
```bash
npm run publish:dry
```
## 高级用法
### 直接使用脚本
```bash
# 基本用法
node scripts/publish.js [版本类型] [选项]
# 发布patch版本并推送到远程仓库
node scripts/publish.js patch --push
# 发布预发布版本到beta标签
node scripts/publish.js prerelease --tag beta
# 模拟运行
node scripts/publish.js --dry-run
# 查看帮助
node scripts/publish.js --help
```
### 版本类型说明
| 类型 | 说明 | 示例 |
| ------------ | ---------------- | --------------- |
| `patch` | 补丁版本(默认) | 1.0.0 → 1.0.1 |
| `minor` | 次要版本 | 1.0.0 → 1.1.0 |
| `major` | 主要版本 | 1.0.0 → 2.0.0 |
| `prerelease` | 预发布版本 | 1.0.0 → 1.0.1-0 |
### 可用选项
| 选项 | 说明 | 示例 |
| ------------- | ----------------------- | ------------ |
| `--tag <tag>` | 指定 npm 发布标签 | `--tag beta` |
| `--push` | 推送 Git 标签到远程仓库 | `--push` |
| `--dry-run` | 模拟运行,不实际发布 | `--dry-run` |
| `--help` | 显示帮助信息 | `--help` |
## 发布流程
脚本会按以下顺序执行:
1. **更新版本号** - 使用 `npm version`命令更新 package.json 中的版本
2. **构建项目** - 执行 `npm run build`命令
3. **发布到 npm** - 执行 `npm publish`命令
4. **创建 Git 标签** - 创建版本标签并可选推送到远程仓库
## 错误处理
- 如果发布过程中出现错误,脚本会自动回滚版本号
- 如果 Git 操作失败,会提示手动执行相关命令
- 所有错误都会有详细的日志输出
## 前置条件
1. **npm 登录** - 确保已经登录 npm:`npm login`
2. **Git 仓库** - 项目需要是一个 Git 仓库
3. **构建脚本** - 确保 `npm run build`命令可以正常执行
## 注意事项
- 发布前请确保代码已经提交到 Git 仓库
- 建议先使用 `--dry-run`选项测试发布流程
- 预发布版本会使用 `beta`标签,不会影响 `latest`标签
- 使用 `--push`选项会自动推送到远程仓库
## 示例工作流
```bash
# 1. 开发完成后,先模拟运行检查
npm run publish:dry
# 2. 发布patch版本
npm run publish:patch
# 3. 或者发布并推送到远程仓库
npm run release
```