git分支开发管理

一、分支命名约定(推荐)

  1. 主分支(线上正式环境) 名称:main(新标准)/ master(旧项目)

    • 作用:永远只存稳定上线代码,禁止直接提交、禁止强行推送
    • 来源:仅从部署分支合并过来
  2. 开发分支(日常开发) 名称:dev

    • 作用:所有功能、bug 修复都在这里开发、联调、测试
    • 日常所有人在此分支协作
  3. 临时部署分支(预发 / 测试 / 上线过渡) 名称:release(通用)/ test / pre

    • 作用:开发完成后合并到此分支做部署、验证、回归测试
    • 验证没问题,再合并到主分支上线

二、标准工作流(核心流程)

1. 日常开发(在 dev 分支)

复制代码
# 切换到开发分支
git checkout dev
# 拉取最新代码
git pull

# 编写代码 → 提交
git add .
git commit -m "功能/修复描述"
git push

2. 开发完成 → 合并到 临时部署分支 release

复制代码
# 先切到部署分支
git checkout release
# 拉取远端最新
git pull
# 把 dev 代码合并过来
git merge dev
# 推送,用于部署测试
git push

此时运维 / 前端可基于 release 分支打包、部署到测试 / 预发环境。

3. 测试通过 → 合并到主分支 main(正式上线)

复制代码
# 切到主分支
git checkout main
git pull
# 合并已验证的部署分支
git merge release
# 推送到线上仓库,正式上线
git push

4. 上线完毕,同步回开发分支(保持三分支一致)

复制代码
git checkout dev
git pull
git merge main
git push

三、关键约束(避坑)

  1. 严禁直接在 main /release 手写代码、直接提交 所有改动必须从 dev 流入。
  2. 线上紧急 bug:
    • 先在 dev 修复 → 合并到 release 验证 → 再合并到 main
  3. 冲突处理:优先在 dev 分支解决,不要放到上线环节解决冲突。

四、极简版流程图

dev(开发) → release(测试/部署) → main(正式线上) 上线后反向同步:main → dev


五、常用快捷命令汇总

复制代码
# 查看所有分支
git branch

# 新建并切换分支(初次建分支用)
git checkout -b dev
git checkout -b release

如果需要配合 feature 功能分支、hotfix 热修复扩展流程,我可以再给你一套升级版四 / 五分支规范。

相关推荐
不老刘8 小时前
Antigravity 的 New Worktree 模式:给 AI 代理一个安全的“平行工位”
人工智能·git·ai编程·antigravity
光谱SpectrAI8 小时前
Windows 也中招:Git Bash 和 Node 仍信任泄露的 eMudhra 证书
git
YIN_尹9 小时前
【git原理与使用】git初识与安装
大数据·git·elasticsearch
Leo_Mr13 小时前
Vue3 项目配置 Git 提交规范(企业通用方案:husky + commitlint + cz-git + lint-staged)
git
jyOverQ14 小时前
Git rebase 和 merge 有什么区别?什么时候该用哪个?
git
晗夜未央14 小时前
跨仓库 Skill 换台电脑就失效?用 Git remote 校验项目
人工智能·git·python
Lsetea14 小时前
Git访问HTTPS证书不受信任:用URL级sslCAInfo限定私有CA范围
git·https·开发工具·ssl证书·ca证书
এ慕ོ冬℘゜1 天前
Git 基础入门|和 SVN 对比 + 四大区域 + 常用命令详解
git·svn
DevLoom_1 天前
macOS 命令行 curl/git 报 SSL 证书错误?eMudhra 事件完整修复指南
git·macos·ssl
keyipatience1 天前
Git学习(4)Git分布式优势与实战配置全解析
git·学习