diff --git a/GIT_FLOW.md b/GIT_FLOW.md new file mode 100644 index 0000000..8c40b58 --- /dev/null +++ b/GIT_FLOW.md @@ -0,0 +1,255 @@ +# Git Flow 工作流规范 + +## 📋 分支策略 + +### 主要分支 +- **`main`** - 生产环境代码,只接受`release/*`和`hotfix/*`的合并 +- **`develop`** - 开发分支,所有功能开发的基础分支 + +### 支持分支 +- **`feature/*`** - 功能分支,从`develop`创建,完成后合并回`develop` +- **`release/*`** - 发布分支,从`develop`创建,用于版本发布 +- **`hotfix/*`** - 热修复分支,从`main`创建,紧急修复生产问题 + +## 🚀 工作流程 + +### 1. 功能开发流程 +```bash +# 1. 从develop创建功能分支 +git checkout develop +git pull origin develop +git checkout -b feature/user-authentication + +# 2. 开发功能并提交 +git add . +git commit -m "feat: 实现用户认证功能" +git push origin feature/user-authentication + +# 3. 开发完成后合并到develop +git checkout develop +git pull origin develop +git merge --no-ff feature/user-authentication + +# 4. 推送到远程develop +git push origin develop + +# 5. 删除功能分支 +git branch -d feature/user-authentication +git push origin --delete feature/user-authentication +``` + +### 2. 发布流程 +```bash +# 1. 从develop创建发布分支 +git checkout develop +git checkout -b release/v1.0.0 + +# 2. 进行发布准备(版本号、文档等) +# 3. 合并到main和develop +git checkout main +git merge --no-ff release/v1.0.0 +git tag -a v1.0.0 -m "Release v1.0.0" + +git checkout develop +git merge --no-ff release/v1.0.0 + +# 4. 推送到远程 +git push origin main --tags +git push origin develop + +# 5. 删除发布分支 +git branch -d release/v1.0.0 +git push origin --delete release/v1.0.0 +``` + +### 3. 热修复流程 +```bash +# 1. 从main创建热修复分支 +git checkout main +git checkout -b hotfix/critical-bug + +# 2. 修复问题并提交 +git add . +git commit -m "fix: 修复关键bug" +git push origin hotfix/critical-bug + +# 3. 合并到main和develop +git checkout main +git merge --no-ff hotfix/critical-bug +git tag -a v1.0.1 -m "Hotfix v1.0.1" + +git checkout develop +git merge --no-ff hotfix/critical-bug + +# 4. 推送到远程 +git push origin main --tags +git push origin develop + +# 5. 删除热修复分支 +git branch -d hotfix/critical-bug +git push origin --delete hotfix/critical-bug +``` + +## 📝 提交规范 + +### 提交消息格式 +``` +: + + + +