首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Git开发流程

Git开发流程

原创
作者头像
用户4547779
修改2024-10-31 11:18:51
修改2024-10-31 11:18:51
4190
举报
文章被收录于专栏:学习学习

Git分支命名规范

在Git版本控制系统中,合理的分支命名规范对于项目管理至关重要。它不仅有助于团队成员理解每个分支的用途,还能在版本回退和问题追踪时提供便利。

主要分支命名

  • master:主分支,用于发布正式版本,不应直接在此分支上进行开发。
  • develop:开发主分支,用于日常开发和功能集成,所有新功能都应从此分支派生。

辅助分支命名

  • feature:功能开发分支,用于开发新功能,通常以feature/开头,后接日期和功能名称,例如feature/20220708_login
  • release:预发布分支,用于准备发布的版本,通常以release/开头,后接测试或版本号,例如release/test
  • hotfix:紧急修复分支,用于修复线上版本的紧急问题,通常以hotfix/开头,后接日期和问题描述,例如hotfix/20220708_login_captcha

版本标签命名

  • Tag:用于标记发布的版本,通常以TAG-开头,后接日期和时间,例如TAG-2022-08-01_21-03-22

git单人开发版本流程

1.在本地切换至当前最新master(正式)分支,进行git pull操作,获取最新的master(正式)分支代码

代码语言:shell
复制
git checkout master
git pull

2.新建自己的feature开发分支,在master分支下执行代码git checkout -b feature_xx_yy,xx为模块标识,yy为版本号标识,例:git checkout -b feature_home_1.0.0

代码语言:shell
复制
git checkout -b feature_xx_yy

3.在feature_xx_yy分支进行开发并提交,开发完成提测时将自己分支提交合并至develop分支

代码语言:shell
复制
//自己feature_xx_yy分支开发过程中,代码提交
git pull
git push

// 合并测试环境
git checkout develop
git merge feature_xx_yy
git pull(有冲突解决冲突)
git push

4.待测试验收完毕后,需要上线时,先切换到master分支,进行git pull操作,获取最新master分支代码

代码语言:shell
复制
git checkout master
git pull 

5. 在最新的master分支下面进行新建本地预发布分支,执行代码git checkout -b rel_xx_yy,xx为模块标识,yy为版本号标识,例:git checkout -b rel_home_1.0.0

代码语言:shell
复制
git checkout -b rel_home_1.0.0

6.在本地预发布rel_home_1.0.0分支合并自己的已提测完成的feature_xx_yy分支,执行代码git merge feature_xx_yy

代码语言:shell
复制
git checkout rel_home_1.0.0
git pull
git merge feature_xx_yy
git push

7.将本地预发布rel_home_1.0.0分支代码合并至release(预发布)分支,并进行需求开发测试

代码语言:shell
复制
git checkout release
git pull(有冲突,解决冲突)
git merge rel_home_1.0.0

8.release(预发)分支测试完成,将rel_home_1.0.0分支合并到master(正式)分支合并提交

代码语言:shell
复制
git checkout master
git pull(有冲突,解决冲突)
git merge rel_home_1.0.0

9.已上线分支预留近期3个版本分支(不要删除)、删除其他冗余分支、tag操作及其他协作(运维)操作

代码语言:shell
复制
// 删除已上线分支远程分支
git push origin -d feature_xx_yy
// 删除本地分支
git branch -D feature_xx_yy

git多人开发版本流程

1.在本地切换至当前最新master(正式)分支,进行git pull操作,获取最新的master(正式)分支代码

代码语言:shell
复制
git checkout master
git pull

2.新建自己的feature开发分支,在master分支下执行代码git checkout -b feature_xx_yy_name,xx为模块标识,yy为版本号标识,name为单个开发者定义唯一标识,例:git checkout -b feature_home_1.0.0_name1

代码语言:shell
复制
// 单个开发者name1的分支
git checkout -b feature_home_1.0.0_name1

3.新建项目公共开发分支,在master分支下执行代码git checkout -b feature_xx_yy_group,xx为模块标识,yy为版本号标识,例:git checkout -b feature_home_1.0.0_group1(项目开发组构建即可)

代码语言:shell
复制
// 项目组公共的分支
git checkout -b feature_home_1.0.0_group1

4.进行多人开发,可以在自己分支每天开发完成合并至项目组公共分支,也可以开发完成进行提测时将自己分支提交至公共分支下,然后将公共分支推送至develop分支

代码语言:shell
复制
// 切换到公共分支
git checkout feature_home_1.0.0_group1
// 拉取公共分支最新代码
git pull (有冲突,解决冲突)
// 合并自己分支
git merge feature_home_1.0.0_name1 
// 推送
git push

// 提测
git checkout develop
git pull(有冲突,解决冲突)
git merge feature_home_1.0.0_group1
git push

5.待测试验收完毕后,需要上线时,先切换到master分支,进行git pull操作,获取最新master分支代码

代码语言:shell
复制
git checkout master
git pull

6.在最新的master分支下面进行新建本地预发布分支,执行代码git checkout -b rel_xx_yy,xx为模块标识,yy为版本号标识,例:git checkout -b rel_home_1.0.0

代码语言:shell
复制
git checkout -b rel_home_1.0.0

7..在本地预发布rel_home_1.0.0分支合并项目的已提测完成的feature_home_1.0.0_group1公共分支,执行代码git merge feature_home_1.0.0_group1

代码语言:shell
复制
git checkout rel_home_1.0.0
git pull(有冲突,解决冲突)
git merge feature_home_1.0.0_group1
git push

8.将本地预发布rel_home_1.0.0分支代码合并至release(预发布)分支,并进行需求开发测试

代码语言:shell
复制
git checkout release
git pull(有冲突,解决冲突)
git merge rel_home_1.0.0

9.release(预发)分支测试完成,将rel_home_1.0.0分支合并到master(正式)分支合并提交

代码语言:shell
复制
git checkout master
git pull(有冲突,解决冲突)
git merge rel_home_1.0.0

10.已上线分支预留近期3个版本分支(不要删除)、删除冗余分支、tag操作及其他协作(运维)操作

代码语言:shell
复制
// 删除已上线分支远程分支
git push origin -d feature_home_1.0.0_group1
// 删除本地分支
git branch -D feature_home_1.0.0_group1

注:不同项目开发过程可能会有差异,上述Git开发流程并非绝对,仅分享参考,使用的CI/CD持续集成持续发布平台也不同,合并发布流程会细化代码管理审核流程权限等等

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Git分支命名规范
  • git单人开发版本流程
  • git多人开发版本流程
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档