前言

使用idea软件操作git非常人性化和方便。

但是如果我的代码使用git提交之后,我想回到以前的版本,此时需要进行git的版本回退。

提交代码分为提交到缓存区、本地库、远程库这3个过程。

下面我将介绍每个阶段的提交对应的回退方法。

本篇文章是掌握git和使用idea操作git的基础为前提的。

如果对使用idea软件操作git的常用操作方法不熟练,请参考我以前的文章:

git的安装和常用的命令-CSDN博客

git常用操作 --- idea编译器 --- 公司实战版-CSDN博客

用idea操作git分支合并 或者 只对自己的提交合并-CSDN博客

git提交时忽略指定文件 和 合并分支时忽略特定文件-CSDN博客

目录

用idea操作git对缓存区代码回退

 用idea操作git对本地库代码回退

第一种使用Undo Commit

Undo Commit回退的缺点

第二种使用Revert Commit

Revert Commit回退的缺点

用idea操作git对远程库代码回退


用idea操作git对缓存区代码回退

举个例子

如果我要对在git缓存区的gitTest文件做一个回退,让它退回到本地状态

首先要打开这个gitTest文件,点击右上角的回退键就把gitTest文件到本地状态了

idea编译器中,文件在git缓存区是绿色的,文件是在本地是红色的

 

用idea操作git对本地库代码回退

在git本地库但是没有推送到远程的代码,回退到git缓存区有两种方式

第一种使用Undo Commit

直接回退,就跟没有发生过一样

打开需要回退的代码提交记录,右键点击Undo Commit

Undo Commit回退的缺点

        只能回退最近一次的提交

第二种使用Revert Commit

本质上是进行了一次相反的代码修改提交

举个例子

我现在想把git测试4这次提交的本地库代码回退到缓存区

回退之后会出现一次回退的提交,可以对提交记录的任意一条进行回退,因为中间的提交记录肯定和后面的提交记录有联系,一半不要尝试,因为代码都是循序渐进写的,这样孤零零的回退中间一条记录肯定会出现代码冲突的,一旦代码冲突后面非常麻烦,所以不要轻易尝试哟

Revert Commit回退的缺点

        本质上还是一次提交,只是对代码进行了相反的提交,严格来说不是真正的回退,而且这样回退之后一定要提交一次的,因为git上面有记录了,后续再进行Revert Commit回退有可能出现报错

用idea操作git对远程库代码回退

远程库代码是本质上是不能回退的

但是可以巧妙的时候Revert Commit回退的特点,对代码再做一次相反的提交并推送到远程库从而实现远程库代码回退的效果

举个例子

回退 git测试3 这次提交,这次提交是已经推送到远程库了

首先使用Revert Commit进行代码的回退,就是再提交一次把 git测试3 这次提交的代码修改回去,只不过是使用Revert Commit进行一键修改了

点击之后此时出现一次和  git测试3提交记录   相反的提交

然后把这次相反的提交同步到远程仓库,从而实现远程仓库对git测试3这次提交的代码还原

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

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

相关文章

webpack+vite前端构建工具 - 3webpack处理js

3 webpack处理js webpack的核心——处理js文件,将模块化的代码打包。具体操作如下 es6转化(为兼容老浏览器,将es6转化为es5) babel-loader 代码规范(例如空格,缩进等代码风格规范) eslint 代码…

Nginx转发中相对路径资源302问题的分析与解决

Nginx转发中相对路径资源302问题的分析与解决 典型案例&#xff1a;后端页面引入./test.css的302问题 问题场景 假设我们有一个后端服务&#xff0c;其页面中通过相对路径引入了CSS文件&#xff1a; <!-- 后端页面代码 --> <link rel"stylesheet" href&…

Vue3 + TypeScript合并两个列表到目标列表,并且进行排序,数组合并、集合合并、列表合并、list合并

在Vue 3 TypeScript中合并并排序两个列表&#xff0c;可以通过以下步骤实现&#xff1a; 解决方案代码 vue 复制 下载 <script setup lang"ts"> import { ref, computed } from vue;// 定义列表项类型 interface ListItem {id: number;name: string;valu…

Python-教程

1 需求 2 接口 3 示例 4 参考资料 Python 教程 — Python 3.13.5 文档

Excel数据导出小记

文章目录 前言一、DataTable >EXCEL二、DBReader >Excel &#xff08;NPOI&#xff09;三、分页查询 DbReader>Excel (MiniExcel)总结&#xff1a; 前言 最近经历了一次数据量比较大的导出&#xff0c;也做了各种优化尝试&#xff0c;这里稍记录一下 一、DataTable …

深入理解链表数据结构:从Java LinkedList到自定义实现

引言 链表作为基础数据结构之一&#xff0c;在Java集合框架中以LinkedList的形式提供。本文将深入分析Java原生LinkedList的实现机制&#xff0c;并介绍我自定义实现的MyLinkedList&#xff0c;最后对比两者的设计差异与实现特点。 Java原生LinkedList解析 基本结构 Java的…

【深度学习】卷积神经网络(CNN):计算机视觉的革命性引擎

卷积神经网络&#xff08;CNN&#xff09;&#xff1a;计算机视觉的革命性引擎 一、算法背景&#xff1a;视觉智能的进化之路1.1 传统视觉处理的困境1.2 神经科学的启示 二、算法理论&#xff1a;CNN的核心架构2.1 基础组成单元卷积层&#xff1a;特征提取引擎池化层&#xff1…

使用@SpringJUnitConfig注解开发遇到的空指针问题

Spring测试中的版本陷阱&#xff1a;SpringJUnitConfig与JUnit版本兼容性深度解析 一个看似简单的空指针异常&#xff0c;背后可能隐藏着JUnit版本不匹配的“幽灵”。 一、SpringJUnitConfig&#xff1a;Spring与JUnit 5的桥梁 SpringJUnitConfig是Spring TestContext框架为**…

[2025CVPR]AdcSR:一种高效实世界图像超分辨率的对抗扩散压缩方法

目录 1. 背景与挑战 2. AdcSR模型概述 2.1 模型架构 2.2 训练策略 3. 公式与原理 4. 创新点 5. 实验与结果 5.1 实验设置 5.2 结果对比 5.3 消融实验 6. 结论 在计算机视觉领域&#xff0c;图像超分辨率&#xff08;Image Super-Resolution, ISR&#xff09;一直是一…

Go 语言中的字符串基本操作

这篇文章已经放到腾讯智能工作台的知识库啦&#xff0c;链接在这里&#xff1a;ima.copilot-Go 入门到入土。要是你有啥不懂的地方&#xff0c;就去知识库找 AI 聊一聊吧。 本篇将详细讲解 Go 语言中与字符串相关的操作。 1、rune 和 字符串长度 1、Go 函数语法约定 在开始…

数学建模会议笔记

看似优化模型 建立整数规划模型 用优化软件、启发式方法、精确方法求解 建立图论和组合优化模型用组合优化方法、启发式方法求解 建立博弈论模型 数据统计分析与可视化- 数据拟合、参数估计、插值、数据的标准化、去伪补全相关度分析、分类、聚类等 最优化理论和方法 线性规划…

学习昇腾开发的六天--ACL应用开发之运行第一个实例

1、下载一个实例&#xff0c;运行一个图像分类实例&#xff08;环境&#xff1a;Ubuntu22.04&#xff0c;硬件&#xff1a;昇腾310B1&#xff0c;加速模块&#xff1a;atlas 200i a2&#xff09; samples: CANN Samples - Gitee.com 目录结构如下&#xff1a; ├── data │…

可灵AI-快手公司自主研发的一款AI视频与图像生成工具

可灵AI是由快手公司自主研发的一款AI视频与图像生成工具&#xff0c;于2024年6月正式推出。以下是对其的详细介绍&#xff1a; 核心功能 AI视频生成&#xff1a; 文生视频&#xff1a;输入文字描述&#xff0c;AI可自动生成匹配的视频片段。图生视频&#xff1a;上传图片&…

创客匠人解析:存量时代创始人 IP 打造与免费流量池策略

在存量竞争的商业环境中&#xff0c;企业如何突破增长瓶颈&#xff1f;创客匠人结合新潮传媒创始人张继学的实战洞察&#xff0c;揭示 “品牌 IP” 双轮驱动下的免费流量池构建逻辑&#xff0c;为知识变现与创始人 IP 打造提供新思路。 一、存量时代的流量革命&#xff1a;从…

提升语义搜索效率:LangChain 与 Milvus 的混合搜索实战

我从不幻想人生能够毫无波折&#xff0c;但我期望遭遇困境之际&#xff0c;自身能够成为它的克星。 概述 LangChain与Milvus的结合构建了一套高效的语义搜索系统。LangChain负责处理多模态数据&#xff08;如文本、PDF等&#xff09;的嵌入生成与任务编排&#xff0c;Milvus作…

MySQL配置简单优化与读写测试

测试方法 先使用sysbench对默认配置的MySQL单节点进行压测&#xff0c;单表数据量为100万&#xff0c;数据库总数据量为2000万&#xff0c;每次压测300秒。 sysbench --db-drivermysql --time300 --threads10 --report-interval1 \--mysql-host192.168.0.10 --mysql-port3306…

猎板深耕透明 PCB,解锁电子设计新边界

在电子技术快速迭代的当下&#xff0c;猎板始终关注行业前沿&#xff0c;透明 PCB 作为极具创新性的技术&#xff0c;正在改变电子设备的设计与应用格局。​ 从传统的绿色、棕色 PCB 到如今的透明 PCB&#xff0c;其突破在于特殊基材与导电材料的运用&#xff0c;实现 85%-92%…

FLAML:快速轻量级自动机器学习框架

概述 FLAML&#xff08;Fast and Lightweight AutoML&#xff09;是微软开发的一个高效的自动机器学习&#xff08;AutoML&#xff09;框架。它专注于在有限的计算资源和时间约束下&#xff0c;自动化机器学习管道的构建过程&#xff0c;包括特征工程、模型选择、超参数调优等…

Github 以及 Docker的 wsl --list --online无法访问问题

修改电脑DNS 腾讯 DNS IP&#xff1a;119.29.29.29 备用&#xff1a;182.254.116.116 阿里DNS IP&#xff1a;223.5.5.5 223.6.6.6 百度DNS IP:180.76.76.76 谷歌DNS IP:8.8.8.8

Go 语言中的变量和常量

这篇文章已经放到腾讯智能工作台的知识库啦&#xff0c;链接在这里&#xff1a;ima.copilot-Go 入门到入土。要是你有啥不懂的地方&#xff0c;就去知识库找 AI 聊一聊吧。 1、变量的声明与使用 我们来探讨编程语言中最核心的概念之一&#xff1a;变量。 1、静态语言中的变量…