video-shuoshan/docs/release-workflow.md
zyc 9d810eb62a
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 3m36s
add git action
2026-03-18 17:34:00 +08:00

93 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 版本发布与回滚操作文档
## 流程概览
```
开发新版本 → 创建版本分支 → 推送到远程 → 合并到 main → 推送 main 触发滚动发布
```
## 操作步骤
### 1. 切换到 main 分支,拉取最新代码
```bash
git checkout main
git pull origin main
```
### 2. 创建版本分支
```bash
# 命名规范release/vX.Y.Z
git checkout -b release/v2.0.0
```
### 3. 在版本分支上开发、提交
```bash
git add <files>
git commit -m "feat: 新功能描述"
```
### 4. 推送版本分支到远程
```bash
git push origin release/v2.0.0
```
### 5. 合并到 main
```bash
git checkout main
git pull origin main
git merge release/v2.0.0
```
### 6. 推送 main触发 CI/CD 滚动发布
```bash
git push origin main
```
CI/CD 会自动构建 Docker 镜像并部署到 K8s 集群。
## 版本回滚
如果新版本上线后出现问题,回滚到上一个稳定版本:
### 方式一:代码回滚(推荐)
```bash
git checkout main
git revert --no-commit HEAD..release/v1.0.0
git commit -m "revert: 回滚到 v1.0.0"
git push origin main
```
> revert 会生成新提交,不会丢失任何历史代码,新版本随时可以恢复。
### 方式二K8s 快速回滚(最快)
```bash
# 回滚到上一个部署版本
kubectl rollout undo deployment/<deployment-name> -n <namespace>
# 或指定具体版本
kubectl rollout undo deployment/<deployment-name> --to-revision=<N> -n <namespace>
```
## 分支命名规范
| 类型 | 命名格式 | 示例 |
|------|---------|------|
| 主分支 | `main` | `main` |
| 版本分支 | `release/vX.Y.Z` | `release/v1.0.0` |
| 功能分支 | `feature/功能名` | `feature/user-auth` |
| 修复分支 | `hotfix/vX.Y.Z` | `hotfix/v1.0.1` |
## 当前版本分支
| 分支 | 状态 | 说明 |
|------|------|------|
| `v1.0.0` | 稳定 | 首个正式版本 |