- VisualStudio2022插件的安装及使用-编程手把手系列文章
- pprof-在现网场景怎么用
- C#实现的下拉多选框,下拉多选树,多级节点
- 【学习笔记】基础数据结构:猫树
🏀事情起因:
最近翻看博客中小伙伴评论时,发现文章【规范】看看人家Git提交描述,那叫一个规矩一条回复:
本狗亲测在我司中使用规范的好处,遂把我司的Git分支管理规范跟大家分享下,可能与大厂标准流程有些简化区别,望大厂大佬勿喷 。
主分支:
主干分支具有分支保护权限,只有运维有权限进行合并分支 。
分支模型 | 用途 |
---|---|
master | 主干分支,正式版本代码归档 |
develop | 开发分支,团队成员日常开发的主分支 |
doc | 文档分支,SQL脚本、配置等 |
辅助分支:
属于临时分支,当功能合并主干后,会删除清理掉 。
分支模型 | 用途 |
---|---|
feature | 从develop拉取开发的功能分支 |
hotfix | bug修复分支 |
举个例子🌰 。
2024年7月3日,我司敏捷团队进行任务分解后,javadog项目正式开启新的迭代,版本号为v2.1.1 。
✅有什么好处?
保持团队的起始开发分支一致,从同一个起点出发 。
通过develop中拉取新分支:feature-javadog-v2.1.1-SNAPSHOT-20240703 。
记住!记住!记住! 这个feature-javadog-v2.1.1-SNAPSHOT-20240703 叫功能分支 。
开发环境中,自动化部署都是通过这个分支名进行打包,命名解释如下:
✅有什么好处?
团队成员有自己临时开发分支,保证开发灵活性,提测版本稳定性,保证功能分支的健壮稳定性 。
👦张三拉取自己开发临时功能分支:feature-javadog-v2.1.1-SNAPSHOT-20240703-zhangsan 。
🧔李四拉取自己开发临时功能分支:feature-javadog-v2.1.1-SNAPSHOT-20240703-lisi 。
✅有什么好处?
团队成员每完成自己任务并验证后,即可合并提测,提高合作效率,加快提测速度,推进项目进度有序进行 。
张三开发的模块A功能完成,本地调试正常后,将自己临时分支合并到功能分支,流水线由测试小姐姐打包功能分支feature-javadog-v2.1.1-SNAPSHOT-20240703 。
✅有什么好处?
保证功能分支灵活性,并兼顾预生产版本分支,如预生产环境遇到问题,可以在功能分支修复并在开发环境验证,解耦保持稳定性 。
通过功能分支feature-javadog-v2.1.1-SNAPSHOT-20240703,拉取feature-javadog-v2.1.1-20240703 预生产分支,并打出对应tag,然后发布预生产 。
❓什么是蓝绿部署 。
蓝绿部署是一种将生产环境直接从当前版本(蓝色)切换到新版本(绿色)的策略。这要求同时运行两个完全相同的生产环境,但只有一个对外提供服务.
聚个贴近实际的栗子🌰,来讲述蓝绿部署 。
一个蛋糕店,有两个员工分别是"蓝"员工A,和"绿"员工B 。
他们共同推销店里的同一种老蛋糕,也就是线上正在运行的老项目 。
这个时候店长说有新品上市了,就把A员工叫回店里去拿新蛋糕内测一下,也就是让蓝线去发布新需求v2.1.1,这条蓝线也只有店内自己评测,不会影响员工B老蛋糕销售,也就是不会影响线上正式环境 。
当员工A那里的新蛋糕评测完成后,就将B员工叫回店里,将A员工推出店外售卖,这样顾客就可以买到新蛋糕,也就是可以访问新的需求功能 。
当A员工新蛋糕卖的不错,也就是系统稳定后。再进行蓝绿部署平衡,将B员工也拿着新蛋糕和A员工一起售卖,进行合理负载 。
本文详细介绍了制定Git分支管理规范的必要性以及一个典型企业内部的Git分支管理流程,旨在通过规范化的Git操作促进团队高效协作、确保代码质量和提升开发流程的灵活性.
公众号回复【入群】或者【加入】,便可成为【程序员学习交流摸鱼群】的一员,问题随便问,牛逼随便吹,目前群内已有超过280+个小伙伴啦!!! 。
javadog.net 。
大家可以在里面留言,随意发挥,有问必答 。
【工具】珍藏免费宝藏工具,不好用你来捶我 。
【插件】IDEA这款插件,爱到无法自拔 。
【规范】看看人家Git提交描述,那叫一个规矩 。
【工具】用nvm管理nodejs版本切换,真香! 。
【项目实战】SpringBoot+uniapp+uview2打造H5+小程序+APP入门学习的聊天小项目 。
【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序 。
【模块分层】还不会SpringBoot项目模块分层?来这手把手教你! 。
【ChatGPT】SpringBoot+uniapp+uview2对接OpenAI,带你开发玩转ChatGPT 。
最后此篇关于【规范】Git分支管理,看看我司是咋整的的文章就讲到这里了,如果你想了解更多关于【规范】Git分支管理,看看我司是咋整的的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
#include int main () { char name[20]; printf("Type your name please: "); fgets(name,20,
我有一个使用 new Regex(string pattern) 构造函数创建的 Regex 对象,之后有没有办法查看创建该 regex 对象的模式? 我似乎无法访问 Regex 或 RegexOpt
我从 C 开始,我必须检查 main 函数的参数是否为 double。我正在尝试使用 strtod,但它给我带来了一些麻烦。所以我的主要看起来像这样: int main (int argc,
假设我有: 如何检查 $('.outer') 是否有一个 div,其中包含名为“bar”的类? 最佳答案 使用:has选择器。 $('.outer:has(.bar)') jsFiddle .
花点时间看看这个 fiddle 。此处,Container1 和 Container2 具有背景色:#ccc 和 h1,而 .logo div 具有边距。左右边距工作正常。为什么 Margin-Top
试试这个: template class Base { public: int someBaseMember;
在我获取远程数据 (git-fetch) 之后,git 足够友好地告诉我每个分支上的 SHA,old..new,但是如果我在控制台工作了很多,我可能会失去它们。 如何再次显示它们? 当然我可以将输出保
我在 Wordpress 平台上构建了一个带有水平菜单的网站。 在 ie 9+ 和 firefox 中查看时似乎没问题,但在 ie8- 上菜单 css 类似乎不正确。 我正在使用 firebug 努力
是否可以查看该类型实现了哪些类型类?像这样的东西: >:typeclasses Int [Num, etc...] 最佳答案 使用:info命令。 Prelude> :info Int data In
我正在使用Windows功能CreateToolhelp32snapshot枚举我的机器上正在运行的进程。 pe32.szeFileName它返回的字段是 WCHAR ,这是可执行文件的名称。 我想将
我编写了一个函数,它接受一些参数,并在函数内部使用一个类,该类具有来自第三方库的函数,该函数返回一个 promise ,并且我在自己的函数中返回该 promise 的结果。像: return clie
在 R 中,可以指定一个公式: F <- as.formula('X ~ 1') 我正在尝试想出一种方法来测试上面的 F 是否仅包含截取,即 ~1。我试图使用 grepl 无济于事。有没有办法确定上面
我是一名优秀的程序员,十分优秀!