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 热修复扩展流程,我可以再给你一套升级版四 / 五分支规范。

相关推荐
kyriewen5 小时前
别再每次都 Google 了:我整理了前端日常最常踩的 10 个 Git 坑,附速查表
前端·javascript·git
A_Lonely_Cat2 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
和你看星星4 天前
Git rerere:让重复冲突只解决一次
git
嘻嘻仙人8 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson8 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友8 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金9 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git
江华森9 天前
Git 基础筑基:从原理到团队协作的全栈实战
git
JakeJiang9 天前
Git 必备命令指南:从日常高频到项目开发实战
git
叫我少年10 天前
Windows 中安装 git
git