如何利用Idea回滚代码以及Cherry-Pick部分代码

news2024/9/20 15:43:23

引言

大家在版本迭代过程中,是否遇到过开发好的需求,都已经合并到Master分支等待发布后,临时通知不需要上线了的情况。这个时候一般会要求只上一部分紧急功能或者别的新功能,那么这个时候就需要用到Git的Reset以及Cherry-Pick功能。

代码准备

首先我们先准备好三个分支

UAT:作为我们的开发分支(防杠:仅用于演示,UAT在日常开发过程中也不可以直接提交代码的)
Master:作为发布分支
feature-20230630-dev:作为我们的HotFix分支

初始化

首先我们从检查Master分支的代码:
在这里插入图片描述

提交feature-20230630-dev

然后切换到 feature-20230630-dev 分支,提交我们的HotFix代码
在这里插入图片描述

提交UAT

然后切换到UAT分支,UAT分支上我们模拟日常开发,进行多次代码提交
在这里插入图片描述

代码合并

然后我们将UAT代码合并到Master分支
在这里插入图片描述

代码回滚

这时候你们的产品就跑过来了,气势汹汹的跟你讲,这次发布延期了,生产上发现了一个重大BUG,需要立即修复并发布(即上文的feature-20230630-dev分支的代码),那么首先我们需要将Mater分支代码进行回退

我们选择分支origin/master,选择相应的提交记录,比如我这次要回滚的是问题1-问题4,那么我选择的提交记录应该为问题1之前的一次提交(即:初始化代码),右击选择 “Reset Current Branch To Here”
在这里插入图片描述
弹窗中,可以选择选择 “Hard”(强制)选项来完全回滚到该提交,或选择 “Soft”(软性)选项来回滚到该提交并保留更改,这里我选Hard即可

切换到Local的Mater分支,可以看到提交记录已被回滚
在这里插入图片描述
由于当前只回滚了本地的代码,这时候如果后悔了或者回滚错提交了,直接pull一下远程代码即可

推送到远程

此时如果直接使用git push,会将远程的记录merge下来,所以此时需要使用

git push --force

强制提交到远程

在这里插入图片描述

Cherry-Pick

现在就剩最后的一步了,将我们需要的代码cherry-pick到master分支,选择feature-20230630-dev
在这里插入图片描述
右击我们先要合并过去的提交,选择Cherry-Pick,即可合并该次提交到当前分支
在这里插入图片描述
最后推送到远程
在这里插入图片描述
下班!!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

钉钉机器人用bitmap实现签到记录

现在是周五晚上,下面是一个二进制数字,其中,有16位,最后一位下标是15,今天晚上是14,我签到成功了

一定要收藏的30套可视化大屏制作模板!升职加薪不再是梦想!

前几天和朋友吃饭聊天,他吐槽说老板让他做可视化大屏,但他不会敲代码根本做不出来,老板动动嘴巴子根本不考虑技术难度只想看到成果,他焦虑得都睡不着觉。我给他分享了一套可视化大屏模板,10分钟就制作完成了老板要求的…

了解浏览器缓存

什么是HTTP缓存,如何工作的? 当我们打开一个页面时,会向服务端发起很多次请求,如下图打开百毒首页,发起了HTML、各种图片、JS、CSS等资源共101次请求。这里面很多资源并不会频繁变化,每次打开页面都重新请…

利用Python构建宁德时代、比亚迪、隆基绿能股票时间序列预测模型

存货 import tushare as ts # 导包 import numpy as np import matplotlib.pyplot as plt from scipy.signal import find_peaks from scipy.stats import norm import datetime import pandas as pd import seaborn as sns # pip install seaborn import matplotlib.patches …

Oracle报错:“Error in invoking target ‘agent nmhs’ of makefile...”

前言:Oracle在安装过程中的报错一定要重视,这决定你后续是否能完成安装以及是否能使用。我这边会陆续汇总一些报错现象以及解决方案共享。 ##Install Product 86%报错信息 :“Error in invoking target agent nmhs of makefile...”解决方案…

意大利语翻译哪个公司比较专业?

据了解,意大利语除了通行于意大利之外,还通行于美国、加拿大、阿根廷和巴西等29个国家的,其应用极为广泛。随着意大利语翻译需求量的日益增加,也促进了意大利语与其它语言间的交流、转化和发展。那么,意大利语翻译难吗…

抖音短视频矩阵号系统开源部署搭建分享(二)

开发背景:抖音seo源码,抖音矩阵系统源码。抖音获客系统源码,短视频矩阵系统源码开源搭建(MySQL数据库,NGINX,PHP7.4,MySQL5.7,redis) 技术要点: 服务器配置服…

vue-router.esm.js:2248 Error: Cannot find module ‘@/views/dylife/ 报错解决

具体是展示 一直加载 控制台报找不到模块 webpack版本问题,webpack4 不支持变量方式的动态 import ,新版本需要使用 require() 来解决此问题。 return () > import(/views/${view}) 改写成 return (resolve) > require([/views/${view}], reso…

python接口自动化(四)--接口测试工具介绍(详解)

简介 “工欲善其事必先利其器”,通过前边几篇文章的介绍,大家大致对接口有了进一步的认识。那么接下来让我们看看接口测试的工具有哪些。 目前,市场上有很多支持接口测试的工具。利用工具进行接口测试,能够提供测试效率。例如&…

【C++】浅析C++中的虚函数

关于虚函数 Q1&#xff1a;观察一个类引入虚函数后&#xff0c;类会发生什么变化&#xff1f; 首先&#xff0c;创建一个空类A&#xff0c;并实例化出A的一个对象a&#xff0c;计算一下这个对象占用多少字节&#xff1a; #include<iostream> using namespace std;clas…

02-阴影

使用阴影 1.给立方体添加castShadow&#xff0c;让立方体产生阴影 cube.castShadow true;2.创建一个地面用于接收阴影 const planeGemetry new THREE.PlaneGeometry(20, 30)const planeMaterial new THREE.MeshPhongMaterial({ color: 0xffffff })const plane new THREE.…

LeetCode 2. 两数相加

文章目录 1. 题目描述2. 解题代码 1. 题目描述 链接&#xff1a;https://leetcode.cn/problems/add-two-numbers/ 2. 解题代码 public ListNode AddTwoNumber(ListNode l1, ListNode l2) {ListNode head new ListNode();ListNode cur head;int carry 0;while (l1 ! null…

CIO 访谈|财达证券 IT 基础架构云化转型思考与实践

作为河北省证券行业的主力军&#xff0c;财达证券始终坚持用科技赋能业务&#xff0c;全方位推动信息化和数字化建设。在本期视频中&#xff0c;我们请到了财达证券首席信息官谢井民&#xff0c;分享如何基于 SmartX 超融合逐步实现 IT 基础架构云化转型&#xff0c;满足公司“…

RPC框架(一):扫盲

文章目录 一、概要二、RPC组成部分三、影响RPC框架性能的因素 一、概要 RPC作用&#xff1f; 让不同服务间调用方法像同一服务间调用本地方法一样 二、RPC组成部分 Client&#xff1a;RPC协议调用方 Server&#xff1a;远程服务方法的具体实现 Stub/Proxy&#xff1a;RPC代…

基于SpringBoot的家庭理财记账系统的设计与开发

1.引言 随着社会的发展&#xff0c;社会的方方面面都在利用信息化时代的优势。互联网的优势和普及使得各种系统的开发成为必需。 本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采用java语言技术和mysql数据库来完成对系统的设计。整个…

Apache组件POI,将图片下载到Excel文件中并导出。

在日常的工作中&#xff0c;有时我们会遇到需要将数据库表中图片字段下载到Excel中的需求&#xff0c;为方便各位小伙伴今后的开发工作&#xff0c;我将分享出自己写的代码&#xff0c;在文章末尾有我上传到 Gitee 上的 Demo案例&#xff0c;希望大家喜欢。 将图片下载到Excel文…

[CKA]考试之Deployment管理pod扩缩容

由于最新的CKA考试改版&#xff0c;不允许存储书签&#xff0c;本博客致力怎么一步步从官网把答案找到&#xff0c;如何修改把题做对&#xff0c;下面开始我们的 CKA之旅 题目为&#xff1a; Task 扩容 deployment guestbook 为 6个pod 注意&#xff0c;如果题目要求先切换K8…

低价高品质的头戴式降噪耳机,还支持主动降噪,QCY H4体验

每天办公的时候&#xff0c;我都喜欢戴上耳机听音乐&#xff0c;开会的时候也会方便一些。以前我用过无线入耳式耳机&#xff0c;但是戴时间长了会让耳朵很痛苦&#xff0c;因为室内也不算热&#xff0c;所以我觉得头戴式蓝牙耳机很合适&#xff0c;目前我用的是这款QCY H4头戴…

Laravel 多字段去重count计数

Laravel 多字段去重count计数 背景&#xff1a;需要统计数据列表总条数&#xff08;字段1、字段2去重统计&#xff09; table&#xff1a;policy_view,去重字段admin_id和permission 期望结果&#xff1a;count不含重复统计数据 解决思路&#xff1a; 语法&#xff1a;DISTI…

appium下载安装及环境配置及夜神模拟器下载、nodejs安装

appium所需要的环境有&#xff1a;jdk、android sdk、Nodejs、appium客户端 此次教程只针对于windows jdk、Android sdk已下载安装配置好环境&#xff0c;此次教程不再重复记录 jdk可看这篇博文jdk安装及环境配置 Android sdk 可看这篇 Android SDK下载与安装 一、Nodejs安装 …