你好! Git——企业级开发模型

企业级开发模型(6)

  • 一、删除远程分支,git branch -a (查看所有本地分支与远程分支)还能看到已经删除的分支,怎么解决?
  • 二、企业级开发流程
    • 2.1 企业级开发流程
    • 2.2 系统开发环境
  • 三、Git分支设计模型
  • 四、企业级项目管理
    • 2.1 准备工作
    • 2.2 代码的开发(测试)

一、删除远程分支,git branch -a (查看所有本地分支与远程分支)还能看到已经删除的分支,怎么解决?

在这里插入图片描述
在这里插入图片描述
解决方法:
查看远程分支的情况

git remote show origin

被删除的分支就是陈旧的分支
在这里插入图片描述

git remote prune origin

在这里插入图片描述
然后删除本地分支,就完成了彻底删除。

先在master分支上拉取,更新信息,然后删除别的分支
git branch -d function1 function2 dev

在这里插入图片描述
在这里插入图片描述

二、企业级开发流程

2.1 企业级开发流程

我们知道,⼀个软件从零开始到最终交付,⼤概包括以下⼏个阶段: 规划、 编码、 构建、 测试、 发布、部署和维护。

软件规模较小的项目可以由一个软件开发人员去完成(开发->测试->发布上线)
软件规模大,一个人就吼不住了,就需要多人去开发。
在这里插入图片描述
• 开发团队(尤其是敏捷团队)追求变化
• 运维团队追求稳定
为了弥合开发和运维之间的鸿沟,需要在⽂化、 ⼯具和实践⽅⾯的系列变⾰ ⸺DevOps正式登上舞台。

DevOps(Development和Operations的组合词) 是⼀ 种重视“软件开发⼈员(Dev) ”和“IT运维技 术⼈员(Ops) ”之间沟通合作的⽂化、 运动或惯例。 透过⾃动化“软件交付”和“架构变更”的流 程,来使得构建、 测试、 发布软件能够更加地快捷、 频繁和可靠。 在DevOps的软件开发过程包含计 划、编码、 构建、 测试、 预发布、 发布、 运维、 监控,由此可⻅DevOps的强⼤。

2.2 系统开发环境

  1. 开发环境: 开发环境是程序猿们专⻔⽤于⽇常开发的服务器。 为了开发调试⽅便,⼀ 般打开全部错 误报告和测试⼯具,是最基础的环境。
  2. 测试环境: ⼀ 个程序在测试环境⼯作不正常,那么肯定不能把它发布到⽣产机上。 该环境是开发环 境到⽣产环境的过渡环境。
  3. 预发布环境: 该环境是为避免因测试环境和线上环境的差异等带来的缺陷漏测⽽设⽴的⼀ 套环境。 其配置等基本和⽣产环境⼀ 致, ⽬的是能让我们发正式环境时更有把握! 所以预发布环境是你的产 品质量最后⼀ 道防线,因为下⼀ 步你的项⽬就要上线了。 要注意预发布环境服务器不在线上集成服 务器范围之内,为单独的⼀ 些机器。
  4. ⽣产环境: 是指正式提供对外服务的线上环境,例如我们⽬前在移动端或PC端能访问到的APP都是 ⽣产环境。
    这⼏个环境也可以说是系统开发的三个重要阶段: 开发->测试->上线。 ⼀ 张图总结:、在这里插入图片描述

三、Git分支设计模型

针对不同的环境有不同的分支,常用开发软件的分支如下:
在这里插入图片描述
master分支:

1.master为主分⽀ ,该分⽀只读且唯⼀分⽀。⽤于部署到正式发布环境,⼀般由合并release分⽀得到。
2.主分⽀作为稳定的唯⼀ 代码库,任何情况下不允许直接在 master 分⽀上修改代码。
3.产品的功能全部实现后,最终在master分⽀对外发布。
4.master分⽀不可删除。

release分支:

1.release分⽀主要⽤于提交给测试⼈员进⾏功能测试。
2.release分⽀测试出问题,需要回归验证develop分⽀看否存在此问题。
3.release分⽀属于临时分⽀,产品上线后可选删除。

develop分支:

1.develop为开发分⽀,基于master分⽀创建的只读且唯⼀分⽀,始终保持最新完成以及 bug 修复后的代码。
2.可根据需求⼤⼩程度确定是由feature分⽀合并,还是直接在上⾯开发(⾮常不建议) 。

feature分支:

1.我们开发一个功能,就有一个分支。
2.一但功能需求开发完毕,开发人员就合并到develop分支里。
3.一但功能上线,就可以将分支删除。

hotfix分支:

1.hotfix分支用来修复bug的分支。一但master分支出现bug,就要基于master分支创建一个hotfix分支。
2.在hotfix分支上把bug修复完毕,需要合并到 master 分⽀和 develop 分⽀并推送远程。⼀旦修复上线,便将其删除。

企业级常⽤的⼀ 种 Git 分⽀设计规范: Git Flow 模型(就是上面的五个分支)。该模型并不是适⽤于所有的团队、 所有的环境,主要是为了编写代码的效率与代码的稳定。

四、企业级项目管理

如何进行企业级项目管理?
为了解决“软件开发人员”和“IT运维技术人员”,之间的沟通问题。需要在⽂化、 ⼯具和实践⽅⾯进行变⾰ ⸺DevOps正式登上舞台。
在这里插入图片描述

2.1 准备工作

在这里插入图片描述

  1. 创建项目
    在这里插入图片描述
  2. 创建仓库
    企业里面要有成员,两种添加成员方式。
    在这里插入图片描述
    添加项目成员
    在这里插入图片描述
    添加仓库成员
    在这里插入图片描述

创建代码
在这里插入图片描述

2.2 代码的开发(测试)

开发场景-基于git flow模型的实践

  1. 新需求加⼊
    新建一个分支
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    代码合并
    在这里插入图片描述
    在这里插入图片描述
    查看到feature/wzq_20240724_pay分支已经合并到develop分支上了。
    在这里插入图片描述
    基于develop分支创建release/1.0_20240724(都是最新的develop分支里的代码)
    在这里插入图片描述
    测试人员测试release通过后(包含测试环境和预发布环境的测试), 就可将代码合并⼊master(和上面合并分支的操作一样)。
    最后把不必要的分支删除掉
    在这里插入图片描述

  2. 修复测试环境 Bug
    在develop测试时,出现bug,我们需要回退到feature分支(feature分支是在develop分支基础上创建完成得)上进行处理,处理完毕后,与新需求加入的流程一致

  3. 修改预发布环境 Bug
    在release分支上出现bug,要回归到develop分支查看是否存在相同的问题。
    如果存在,修复流程 与 修复测试环境 Bug流程⼀致。
    如果不存在,这种可能性⽐较少,⼤部分是数据兼容问题环境配置问题等。

  4. 修改正式环境 Bug
    在master上测试出bug,要回归到develop和release分支上查看是否存在相同的问题。
    如果存在,修复流程 与 修复测试环境Bug流程⼀ 致。
    如果不存在,这种可能性也⽐较少,⼤部分是数据兼容问题环境配置问题等。

  5. 紧急修复正式环境 Bug
    在测试环节未测试出 Bug,上线运⾏⼀段时候后出现了 Bug,需要紧急修复的。
    在master分支的基础上,创建hotfix/XXX分支,修复完毕后发布在master分支上进行测试验证,验证完毕,将这段代码合并到master分支和develop分支,同时删掉hotfix这个分支。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/396724.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ面试题汇总

RabbitMQ面试题 一、RabbitMQ基础1. 什么是RabbitMQ,它的基本架构是怎样的?2. RabbitMQ支持哪些协议?3. 说一下AMQP协议?4. 为什么要使用RabbitMQ?5. MQ的应用场景有哪些?6. 解耦、异步、削峰是什么&#x…

购物系统小程序的设计

管理员账户功能包括:系统首页,个人中心,商品分类管理,商品信息管理,特价商品管理,用户管理,留言板管理,订单管理,系统管理 微信端账号功能包括:系统首页&…

uni-app总结

1. <u-form-item label"报废人" ><u--input v-model"model.remark" border"bottom" placeholder"请输入"></u--input> </u-form-item> border"bottom" 报废日期 为了

后端Web开发之Maven

1.java项目构建工具maven介绍 Maven是apache旗下的一个开源项目。Apache软件基金会&#xff0c;成立于1999年7月&#xff0c;是目前世界上最大的最受欢迎的开源&#xff08;源代码开放&#xff09;软件基金会也是一一个专门为支持开源项目而生的非盈利性组织。 apache开源项目…

PDO在CANopen协议同步传输和异步传输

PDO&#xff08;过程数据对象&#xff09;在CANopen协议中有两种主要的传输方式&#xff1a;同步传输和异步传输。这两种方式决定了PDO数据的传输时机和条件。下面分别举例说明这两种传输方式&#xff1a; 1. 同步传输 (Synchronous Transmission) 概念&#xff1a; 在同步传输…

3GPP 4G 5G 主要协议

4G LTE的协议主要是36 series 5G NR的协议主要是38 series

RustScan:开源端口扫描器

RustScan 是一款开源端口扫描器&#xff0c;专为速度和多功能性而设计。 它结合了时尚的界面和随时间推移而适应和改进的能力。 借助 RustScan 的自适应学习功能&#xff0c;该工具不断优化其性能&#xff0c;使其成为最高效的端口扫描器。 在几秒钟内发现开放端口&#xff…

解决端口号被占用问题

第一种&#xff1a; 最简单有效的方法&#xff0c;重启一下电脑&#xff0c;占用此端口的程序就会释放端口。 第二种&#xff1a; 使用命令找到占用端口的程序&#xff0c;把它关闭。 1、打开运行窗口输入&#xff1a;CMD &#xff0c;进入命令窗口。 2、输入&#xff1a;n…

Candance Allegro 入门教程笔记:如何绘制原理图和原理图库?

文章目录 一、用 Capture CIS 17.4 绘制原理图库 Cadence Allegro QQ交流学习裙&#xff1a;173416628 1、凡亿教育的Candance Allegro 17.4基础教程 2、小哥Cadence Allegro 132讲 技巧视频 3、小哥Cadence Allegro 两层板 基础视频 4、小哥Cadence Allegro 四层板 提高视频…

23.10 Django 事务的使用

1. 事务 事务(Transaction): 是一种将多个数据库操作组合成一个单一工作单元的机制. 如果事务中的所有操作都成功完成, 则这些更改将永久保存到数据库中. 如果事务中的某个操作失败, 则整个事务将回滚到事务开始前的状态, 所有的更改都不会被保存到数据库中. 这对于保持数据的…

3.串口(UART)

串口理论部分可看51部分&#xff1a;链接 数据帧 帧头(2字节&#xff0c;例如AA、BB) 数据长度&#xff08;2字节&#xff09; 数据 CRC16校验&#xff08;2字节&#xff09; 帧尾&#xff08;2字节&#xff09; 代码编写 串口一发送命令控制LED灯(PB5、PE5) LED灯、串口、…

【书生·浦语大模型实战营】第三期 入门岛作业

入门岛作业 Linux闯关任务&#xff1a;完成 SSH 连接与端口映射并运行 hello_world.py。配置vscode作业内容 可选任务1&#xff1a;将Linux基础命令在开发机上完成一遍作业内容 可选任务 2&#xff1a;使用 VSCODE 远程连接开发机并创建一个conda环境作业内容 可选任务 3&#…

Selenium + Python 自动化测试10(unittest概念)

我们的目标是&#xff1a;按照这一套资料学习下来&#xff0c;大家可以独立完成自动化测试的任务。 上几篇我们讨论了元素的定位方法、操作方法以及一些特殊元素的操作。 在实际的测试项目组中每个模块会写多条案例&#xff0c;如第一条用例那里我们的登录。登录的话就可以有多…

面试经典算法150题系列-接雨水

接雨水 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a;6 解释&#xff1a;上面是由数组 [0,1,0,2,1,0,1,3,2,…

doxygen制作接口文档

系列文章目录 文章目录 系列文章目录前言一、下载二、安装三、代码注释四、使用doxygen生成文档 前言 每次手动写接口文档太痛苦了&#xff0c;现在福利来了–doxygen Doxygen是软件开发中广泛使用的文档生成器工具。它自动从源代码注释生成文档&#xff0c;解析有关类、函数和…

LVS原理详解及部署

目录 一、LVS原理 1.LVS简介 2.LVS结构 3.IP负载均衡技术 4.LVS相关术语 二、LVS负载均衡四种工作模式 1.LVS-DR模式 2.LVS-NAT模式 3.LVS-TUN模式&#xff08;了解&#xff09; 4.FULL-NAT模式&#xff08;了解&#xff09; 三、LVS负载均衡十种调度算法 四、LVS部…

学习大数据DAY35 利用 echarts 的开源图表和 python 异常处理优化网站

目录 根据分数统计电影数量来生成图表 上机练习 14 添加异常 添加电影类型判断是整数及正整数异常 部署项目到 Nginx 上机练习 15 根据分数统计电影数量来生成图表 Echarts 官网&#xff1a; https://echarts.apache.org/examples/zh/index.html 下载柱状图和饼图 可以…

Java Enum类笔记

Java系列文章目录 文章目录 Java系列文章目录一、前言二、学习内容&#xff1a;三、问题描述四、解决方案&#xff1a;五、总结&#xff1a;5.1 学习总结&#xff1a; 一、前言 学习Enum类的笔记 二、学习内容&#xff1a; Eunm类的实操 三、问题描述 Eunm枚举的使用 四、解…

Datawhale X 魔搭 AI夏令营第四期-魔搭生图task1学习笔记

根据教程提供的链接&#xff0c;进入相应文章了解魔搭生图的主要工作是通过对大量图片的训练&#xff0c;生成自己的模型&#xff0c;然后使用不同的正向、反向提示词使模型输出对应的图片 1.官方跑baseline教程链接:Task 1 从零入门AI生图原理&实践 2.简单列举一下赛事的…

MongoDB教程

目录 介绍启动命令命令行操作常用命令总结MongoDB Compass 介绍 MongoDB是一个基于分布式文件存储的开源数据库系统&#xff0c;由C语言编写&#xff0c;旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB将数据存储为一个文档&#xff0c;数据结构由键值对组成&…