【GIT】idea中实用的git操作,撤回commit,撤回push、暂存区使用

2024-08-29 05:52

本文主要是介绍【GIT】idea中实用的git操作,撤回commit,撤回push、暂存区使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

IDEA中最常见的UI操作:【GIT】Idea中的git命令使用-全网最新详细(包括现象含义)

文章目录

  • 问题一: idea撤回仅commit错误的代码(仅本地仓库,因为还没推送到远程)
  • 问题二: idea撤回Commit and push的代码 (包括本地、远程仓库)
  • 问题三:push之后发现本地和远程仓库的代码都没了,如何恢复
  • 问题四:发现自己写的代码写错了分支怎么搞-暂存区的使用

问题一: idea撤回仅commit错误的代码(仅本地仓库,因为还没推送到远程)

这种针对于未push的,只是commit的操作

相信我们在开发过程中经常遇到commit代码后,发现还有需要修改的地方又不想多次commit,此时如果不想敲git命令,可以利用idea实现commit撤回,如下操作

例如我们开发以下代码
在这里插入图片描述

此时commit提交、commit成功
在这里插入图片描述
在这里插入图片描述

接下来操作 利用idea撤回commit

步骤1 :找到分支的log记录,下面就是这条记录啦
在这里插入图片描述
步骤2:右键commit记录,点击undo commit

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

步骤3:看日志和文件课件commit已撤回,
修改标识又从新显示出来了!

在这里插入图片描述
至此 撤销commit成功;

问题二: idea撤回Commit and push的代码 (包括本地、远程仓库)

这种针对于commit了而且push了的,如果撤销掉本地的和远程的。

还是上条代码push到远程分支后想撤回

制造条件,先将刚刚的代码push到远程;
对于刚刚undo commit的修改,有时会因为IDEA反应的问题,导致你再提交显示不出来,如下图
在这里插入图片描述
点击后,没识别到修改的这行代码和文件。我们可以到下面的changes List中去找,在右键Commit File就能找到,再提交即可。
在这里插入图片描述
推送远程
在这里插入图片描述
在这里插入图片描述

接下来步入正题:
步骤1: 选择本地仓库commit记录,右键,选择revert commit ,
操作之后,此时可见本地的代码中上次提交已经消失
在这里插入图片描述
但是这个时候只是撤销了本地仓库的代码,远程分支代码还是commit之后的(还是存在已经push的代码的),
在这里插入图片描述

**步骤2:**见下图,本地没了之后,我们需要再把没了之后的代码先Commit,再push一下,
在这里插入图片描述
此时选择push即可撤销远程分支提交,
在这里插入图片描述
先conmmit然后push之后,远程的结果,见下图:
在这里插入图片描述
在这里插入图片描述
来看一下远程: 已经没了之前错误提交的那行代码了。
在这里插入图片描述
OK,至此对于push错误的代码恢复已经完成啦~

问题三:push之后发现本地和远程仓库的代码都没了,如何恢复

这个暂时还未遇见这样的问题;待验证,各位小伙伴如果有补充,请积极评论哈。

push之后发现本地和远程仓库的代码都没了,那不白写了真难受,不要急也有办法,此时还是在本地的commit记录中找到之前commit的记录,右键点击Cherry-pick即可恢复之前commit的代码
在这里插入图片描述
如果在第二个问题的操作之后,又想对刚刚去掉的代码进行恢复了,直接选中revert 的记录,点击再次revert commmit,也就是以当前为基础,按照第二个问题操作就行。
在这里插入图片描述
在这里插入图片描述

问题四:发现自己写的代码写错了分支怎么搞-暂存区的使用

不要急,点击右键,首先stash刚才的修改代码
在这里插入图片描述
在这里插入图片描述

暂存成功
在这里插入图片描述
然后就能切换分支了; 点击右键,再unstash即可
在这里插入图片描述
此时代码已经来到了切换的分支。

至此,经常遇见的问题总结完毕,希望能帮到各位,ღ( ´・ᴗ・` )比心

这篇关于【GIT】idea中实用的git操作,撤回commit,撤回push、暂存区使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1117024

相关文章

Java Stream流与使用操作指南

《JavaStream流与使用操作指南》Stream不是数据结构,而是一种高级的数据处理工具,允许你以声明式的方式处理数据集合,类似于SQL语句操作数据库,本文给大家介绍JavaStream流与使用... 目录一、什么是stream流二、创建stream流1.单列集合创建stream流2.双列集合创建str

Python正则表达式匹配和替换的操作指南

《Python正则表达式匹配和替换的操作指南》正则表达式是处理文本的强大工具,Python通过re模块提供了完整的正则表达式功能,本文将通过代码示例详细介绍Python中的正则匹配和替换操作,需要的朋... 目录基础语法导入re模块基本元字符常用匹配方法1. re.match() - 从字符串开头匹配2.

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo