当前位置: 首页 > news >正文

你好! 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这个分支。

相关文章:

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

企业级开发模型(6) 一、删除远程分支,git branch -a (查看所有本地分支与远程分支)还能看到已经删除的分支,怎么解决?二、企业级开发流程2.1 企业级开发流程2.2 系统开发环境 三、Git分支设计模…...

力扣面试150 查找和最小的 K 对数字 最小堆 去重

Problem: 373. 查找和最小的 K 对数字 &#x1f468;‍&#x1f3eb; 参考题解 class Solution {public List<List<Integer>> kSmallestPairs(int[] nums1, int[] nums2, int k) {// 创建一个大小为 k 的结果列表&#xff0c;用于存储和最小的 k 个数对List<Li…...

Oceanbase 执行计划

test100 CREATE TABLE `test100` ( `GRNT_CTR_NO` varchar(32) COLLATE utf8mb4_bin NOT NULL COMMENT 担保合同编号, `GRNT_CTR_TYP` varchar(3) COLLATE utf8mb4_bin NOT NULL COMMENT 担保合同类型, `COLC_GRNT_IND` varchar(1) COLLATE utf8mb4_bin DEFAULT NULL …...

精品丨模型关系介绍

PowerBI中的模型关系相信小伙伴们都不会感觉到陌生&#xff0c;因为一份优秀的报表无法离开数据模型的支撑。 对比其它BI类工具而言&#xff0c;白茶认为其建模功能才是最为突出的功能点。 模型关系类型 PowerBI中我们常用的模型关系一共包含5类&#xff1a; 一对一关系(1:1) …...

CentOS7 配置 nginx 和 php 方案

配置方案 一、安装软件二、编写配置文件&#xff0c;连接PHP三、引用文件四、测试 鉴于网上教程错综复杂&#xff0c;写下一这篇文章 本教程只需要三步即可 一、安装软件 yum install -y nginx php php-fpm二、编写配置文件&#xff0c;连接PHP 一般情况下在安装完 nginx 后…...

Promise.all全面解析:使用方法与实战技巧

Promise是JavaScript中处理异步操作的重要机制&#xff0c;它提供了一种优雅的方式来处理异步回调&#xff0c;避免了传统回调地狱的问题。而Promise.all作为Promise的一个静态方法&#xff0c;更是在处理多个异步操作时发挥着关键作用。本文将全面解析Promise.all的使用方法&a…...

NLP从零开始------9文本进阶处理之文本相似度计算

1.文本相似度计算简介 在自然语言处理中&#xff0c;经常会涉及度量两个文本相似度的问题。在诸如对话系统和信息减速等中&#xff0c;度量句子或短语之间的相似度尤为重要。在新闻学传媒中应用文本相似度可以帮助读者快速检索到想要了解的报道。 文本相似度的定义式如下所示&a…...

Electron 在 MAC 上的 build 签名应用配置

Electron 在 MAC 上的 build 签名应用配置涉及多个步骤,包括准备开发者账号、生成证书和配置文件、配置环境变量以及使用适当的工具进行签名和公证。以下是一个详细的配置流程: 一、准备开发者账号 首先,你需要在 Apple 开发者网站 注册并拥有一个开发者账号。这个账号将用…...

15 交换机命令行配置

交换机命令行配置 一、交换机命令行基本配置 &#xff08;一&#xff09;配置主机名 Switch>enable Switch#configure terminal Switch(config)#hostname S1&#xff08;二&#xff09;查看配置信息 Switch#show running-config Building configuration...Current confi…...

工作流之Flowable与SpringBoot结合

文章目录 1 Flowable1.1 flowable-ui部署运行1.2 绘制流程图1.2.1 绘制1.2.2 绘图细节1.2.3 bpmn文件导入 1.3 后台项目搭建1.3.1 pom.xml1.3.2 数据库表说明 1.4 流程引擎API与服务1.4.1 主要API1.4.2 示例 1 Flowable 1.1 flowable-ui部署运行 flowable-6.6.0 运行 官方dem…...

python实战:数据分析基础知识

当涉及到数据分析和统计建模时&#xff0c;Python 提供了强大的工具和库&#xff0c;如 pandas、numpy、statsmodels 和 matplotlib。本文将以一个实际的案例为例&#xff0c;介绍如何利用这些工具进行回归分析&#xff0c;并通过可视化工具进行结果展示和解释。 1. 背景介绍 …...

Grafana深入讲解

Grafana 深入讲解 目录 概述Grafana 基本概念 2.1 Grafana 简介2.2 Grafana 功能特性2.3 Grafana 架构 Grafana 安装与配置 3.1 安装 Grafana3.2 配置 Grafana3.3 验证 Grafana 安装 Grafana 数据源 4.1 支持的数据源类型4.2 添加数据源4.3 配置 Prometheus 数据源 Grafana 仪…...

002 git

下载 使用git clone命令下载特定分支 打开终端或命令行界面。 使用cd命令切换到你想存放仓库副本的本地目录。 使用以下命令克隆仓库的develop分支到本地&#xff08;注意替换<仓库URL>为实际的仓库URL&#xff09;&#xff1a; git clone -b develop --single-branch…...

MySQL --- 用户管理

一、用户信息 MySQL中的用户信息&#xff0c;都存储在系统数据库mysql的表user中 user表的结构如下 这里主要介绍以下几个字段 host &#xff1a; 表示这个用户可以从哪个主机登陆&#xff0c;如果是 localhost &#xff0c;表示只能从本机登陆 user&#xff1a; 用户名 a…...

Linux 错误码

目录 一、概述二、含义三、错误处理函数1、IS_ERR2、strerr、perror 一、概述 在 Linux 系统中&#xff0c;错误码是用来表示操作系统运行过程中发生的错误的数字代码。错误码通常由负数表示&#xff0c;0 表示成功&#xff0c;正数表示警告或其他非致命错误。 为了开发者更好…...

《向量数据库指南》——开源社区与商业化的平衡

开源社区与商业化的平衡 Lynn:我觉得这个说的特别好,因为开发者工具其实有很多,但是事实上真正去做开源的这种社区的,尤其是做的比较大的,其实这样的企业还是比较少的。那么当初在起步的时候就这么坚定的去选择开源,然后这么短的时间能获得这么多产品反馈。其实让我想到那…...

记录一次echarts图表大数据量轮询刷新页面卡死问题的优化

项目场景: 在我们的项目架构中,集成的Echarts图表组件采用了折线图,业务需求即每300毫秒自动更新图表上的数据,并且每一次的数据点数量达到了约700个,折线图刷新的很快,每300毫秒就要刷新数据 问题描述 开发过程中发现在这种数据量请求频率下,大概2个小时左右就会导致…...

补录:day023-回溯法

40.组合II 给定一个候选人编号的集合 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意&#xff1a;解集不能包含重复的组合。 思路:组合题目二&#xff0c;这个题…...

【物联网】(防水篇)电子产品如何做到IPX7级别的防水?

电子产品如何做到IPX7级别的防水&#xff1f; 要使电子产品达到 IPX7 级别的防水&#xff0c;通常需要以下几个方面的措施&#xff1a; 1. 密封设计&#xff1a; 在产品的外壳连接处、接口、按键等部位&#xff0c;采用高质量的密封材料&#xff0c;如橡胶垫圈、硅胶密封圈等…...

JDK版本切换 - Windows

JDK 下载 点我跳转 - JDK下载官网 可以切换网址后面的JDK版本来跳转到不同的JDK版本下载页面 JDK 安装 双击exe文件即可安装最好是使用默认路径安装, 几个版本的JDK加起来也就1G如果双击exe文件没反应的话, 可以用**7-zip**解压出相应的文件 下载安装**7-zip**** - 默认路…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战

在现代战争中&#xff0c;电磁频谱已成为继陆、海、空、天之后的 “第五维战场”&#xff0c;雷达作为电磁频谱领域的关键装备&#xff0c;其干扰与抗干扰能力的较量&#xff0c;直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器&#xff0c;凭借数字射…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成&#xff0c;用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机&#xff1a; ​onCreate()​​ ​调用时机​&#xff1a;Activity 首次创建时调用。​…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

作为测试我们应该关注redis哪些方面

1、功能测试 数据结构操作&#xff1a;验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化&#xff1a;测试aof和aof持久化机制&#xff0c;确保数据在开启后正确恢复。 事务&#xff1a;检查事务的原子性和回滚机制。 发布订阅&#xff1a;确保消息正确传递。 2、性…...

c# 局部函数 定义、功能与示例

C# 局部函数&#xff1a;定义、功能与示例 1. 定义与功能 局部函数&#xff08;Local Function&#xff09;是嵌套在另一个方法内部的私有方法&#xff0c;仅在包含它的方法内可见。 • 作用&#xff1a;封装仅用于当前方法的逻辑&#xff0c;避免污染类作用域&#xff0c;提升…...

深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向

在人工智能技术呈指数级发展的当下&#xff0c;大模型已然成为推动各行业变革的核心驱动力。DeepSeek 开源模型以其卓越的性能和灵活的开源特性&#xff0c;吸引了众多企业与开发者的目光。如何高效且合理地部署与运用 DeepSeek 模型&#xff0c;成为释放其巨大潜力的关键所在&…...

0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化

是不是受够了安装了oracle database之后sqlplus的简陋&#xff0c;无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话&#xff0c;配置.bahs_profile后也能解决上下翻页这些&#xff0c;但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可&#xff0c…...

软件工程 期末复习

瀑布模型&#xff1a;计划 螺旋模型&#xff1a;风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合&#xff1a;模块内部功能紧密 模块之间依赖程度小 高内聚&#xff1a;指的是一个模块内部的功能应该紧密相关。换句话说&#xff0c;一个模块应当只实现单一的功能…...