git分支的管理流程

标签: git 分支 管理 | 发表时间:2022-05-27 17:25 | 作者:我的用户名
出处:https://juejin.cn/backend

theme: fancy

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第2天, 点击查看活动详情

现在大部分公司都是使用git来管理代码的,我今天分享一下我们司后端代码的git管理流程吧。

分支说明

分支名称 对应环境
develop 研发服务器
test 测试服务器
master 生产服务器
feature 本地服务器
masterBugFix 本地服务器
testBugFix 本地服务器

正常版本迭代流程

image.png

  1. 开发阶段
  • 先拉取最新的develop分支的代码。
  • 确保develop上一个版本的代码已经合并到test分支了。
  • 基于develop分支创建自己的功能开发分支。
  • 功能分支的命名方式:feature/人名/功能名/版本号。
  1. 测试阶段
  • 功能开发完毕,可以先rebase一下develop分支,然后把功能分支的代码合并到develop分支。
  • 在研发服务器上自测通过后就可以把develop分支代码合并到test分支。然后代码提测。

3.测试bug修复阶段

  • 先拉取最新的test分支代码。
  • 基于test分支创建测试bug修复分支testBugFix,bug修复完成后进行代码合并。testBugfix->test->develop。

4、版本上线阶段

  • 测试通过后,test分支的代码合并到master分支,打下tag。然后就可以上线了。

正式服bug修复流程

image.png

  • 先拉取最新的master分支代码。
  • 基于master分支创建正式服bug修复分支masterBugFix。
  • 正式服bug修复完成后,把代码合并到master分支,然后把master分支代码上传到测试服测试。测试不通过则继续在masterBugFix分支进行代码修改,直到测试通过。
  • bug修复完成之后进行代码合并,master->test->develop。

以上就是我要介绍的流程了,其实流程并没有规定一定要怎么样的,要根据自己公司的开发流程来制定就好,我所介绍的这套流程也未必适合你们使用。我的这套流程其实也是存在问题的,正式服bug修复流程中,当bug修改完提测后,本来测试服中正在测试的工作就只能停止,因为代码已经被覆盖了,要等正式服bug修复完成后再把测试服的代码恢复为test分支的代码才能继续做测试工作。所以没有流程是完美的,适合自己使用的就是好的。既然有缺陷,那就用一些规范来防止这些缺陷给我们造成不必要的麻烦,所以针对流程还必须要有相应的规范来进行约束,这样才是好的流程。

谢谢观看!

streetlamp 敬上!

相关 [git 分支 管理] 推荐:

Git分支管理策略

- - 阮一峰的网络日志
如果你严肃对待编程,就必定会使用" 版本管理系统"(Version Control System). 眼下最流行的"版本管理系统",非 Git莫属. 相比同类软件,Git有很多优点. 其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便. 有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用.

git分支的管理流程

- - 掘金 后端
这是我参与「掘金日新计划 · 6 月更文挑战」的第2天, 点击查看活动详情. 现在大部分公司都是使用git来管理代码的,我今天分享一下我们司后端代码的git管理流程吧. 先拉取最新的develop分支的代码. 确保develop上一个版本的代码已经合并到test分支了. 基于develop分支创建自己的功能开发分支.

Git 分支管理策略与工作流程

- - IT瘾-dev
Git 是目前世界上最先进的分布式版本控制系统. 它使我们更方便的跟踪,管理和组织代码. 也帮助了我们更好的与其他开发者进行协作开发. 协作开发必须有一个规范来约束各个贡献者的行为. 这个规范就是 Git 工作流程(Git Workflow),也为我们规范各个分支管理策略等行为. Git 工作流程是有关如何使用 Git 以高效协作开发的规则或策略建议,下文这些常见工作流程只是作为指导参考,这些工作流不是一成不变的,我们应该根据自己的项目选择或制定合适自己的工作流.

Git 分支设计规范

- - 掘金后端
这篇文章分享 Git 分支设计规范,目的是提供给研发人员做参考. 规范是死的,人是活的,希望自己定的规范,不要被打脸. 在说 Git 分支规范之前,先说下在系统开发过程中常用的环境. DEV 环境:用于开发者调试使用. FAT 环境:功能验收测试环境,用于测试环境下的软件测试者测试使用. UAT 环境:用户验收测试环境,用于生产环境下的软件测试者测试使用.

centos搭建Git分布式管理控制系统

- We_Get - 博客园-首页原创精华区
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理. 操作系统:centos 5.5. # tar zxvf curl-7.17.1.tar.gz  //解压. 修改ld.so.conf 添加/usr/local/lib. vi /etc/ld.so.conf 添加/usr/local/lib.

Git基础

- Wolf - 潘魏增
上个月末在公司内部作了一次《Git基础》的主题分享. 这里把分享内容公布出来,希望对一些朋友有用. 如果之前没有接触过Git,wikipedia上面已经有非常好的介绍. pdf格式:http://panweizeng.com/download/git-basics-meituan.pdf. keynote格式:http://panweizeng.com/download/git-basics-meituan.key.

Git-rebase 小筆記

- lepture - YORKXIN×YORKXIN
最近剛好有個機會整理很亂的 Git commit tree,終於搞懂了 rebase 的用法,筆記一下. 大家都知道 Git 有個特色就是 branch 開很大開不用錢,但很多 branches 各自開發,總要在適當時機 merge 進去 master. 看過很多 git 操作指南都告訴我們,可以妥善利用 rebase 來整理看似很亂或是中途可能不小心手滑 commit 錯的 commits ,甚至可以讓 merge 產生的線看起來比較簡單,不會有跨好幾十個 commits 的線.

Git 简明教程

- satoru - python.cn(jobs, news)
Git 是一款强大的分布式版本控制系统.在他的官网可以找到已经有很多著名的项目正在使用. Like most other modern version control systems, Git gives each developer a local copy of the entire development history, and changes are copied from one such repository to another.

git架构图解

- - CSDN博客研发管理推荐文章
  最近又遇到Git了,发现网络上Git的资料确实不咋滴,难懂不全面. 至于Git是什么我就不多说了,相比svn上手确实更难. 与svn集中版本库相比较,Git被称作分布式版本库,在分布式的版本库中任何一个库都可以作为中心库看待. 如果说svn是颗树,那么Git就像一张网. Svn在每个目录都有一个.svn文件夹存放信息,而git只在根目录才有,这就决定了svn可以单独拉取某个子目录或者某个文件,而git需要全部拉取.

科普:Git Commit Guidelines

- - IT瘾-dev
降低Review成本,可以明确知道本次提交的改变和影响. 规范整个Team的提交习惯,对技术素养的养成有益. 可以通过统一工具,抽取规范的message自动形成change log. 目前Github的Angular项目,就是完全采用规范的Git Message来进行日常的提交管理和发布管理的,下面是这个项目的Commit记录,和自动根据commit生成的change log.