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

相关推荐
小此方3 小时前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
溪语流沙3 小时前
【Web全栈进阶】JWT无状态认证:签发、校验、刷新
前端·git·python·github
OsDepK4 小时前
osgit纯图形化git版本管理工具,多人开发团队协作工具,支持Mac与Windows
git
Madison-No710 小时前
Git版本控制工具(一)
git
小小小米粒18 小时前
重置本地git
大数据·git·elasticsearch
鶴哥只手遮天1 天前
第 8 章 工作区与检出:unpack-trees 与并行 checkout
git
xing-xing1 天前
git 相关命令总结
git
A-刘晨阳1 天前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
ControlRookie2 天前
SyncBridge:一个 CODESYS 工程与 AI 之间工程师级的同步工具
git·ai编程·codesys·工业软件·controlrookie
鬼手点金2 天前
opencode-性能优化建议
java·人工智能·git·自动化·nanogpt