git 盘点各种失误操作解决方法

2023-12-08 22:49

本文主要是介绍git 盘点各种失误操作解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 一、commit 之后发现提交中包含的文件不对
      • 1.1 场景说明
      • 1.2 解决方法
      • 1.3 注意事项
    • 二、commit 之后没有 push 想要修改 commit 的注释信息
      • 2.1 场景说明
      • 2.2 解决方法
    • 三、git stash pop出现冲突后回滚
      • 3.1 场景说明
    • 四、git cherry-pick出现冲突后回滚
      • 4.1 场景说明

一、commit 之后发现提交中包含的文件不对

1.1 场景说明

我们对 A文件和 B文件进行了修改,然后我们想对 A文件的修改进行一次提交。但是我们在git add 的时候把 B文件也添加上了,这就导致这次提交把 A、B两个文件的修改都提交了。

假设我们的提交记录如下

提交2 对A文件进行修改
提交1 项目初始化

1.2 解决方法

执行如下命令就可以撤销本次commit 并且我们的修改也是保留的

git reset HEAD~1

1.3 注意事项

这里特别和另外两个命令做对比,因为我自己就犯过类似的错误,只想撤销 commit,重写提交一次。结果执行了下面的命令导致修改的内容也不见了(真的是血的教训)。

所以这里特别强调,下面这两个命令会撤销你修改的内容,完全回到上上次提交(也就是提交1)之后的样子
不要用
不要用
不要用

# 提交2的提交记录也随之消失
git reset --hard HEAD~1
# 提交2的提交记录依然存在
git revert 提交2的版本号

二、commit 之后没有 push 想要修改 commit 的注释信息

2.1 场景说明

我们对A文件进行了修改,并提交注释写成了 “对B文件进行修改” 。这时我们想要修改这条注释信息为 “对A文件进行修改”

2.2 解决方法

执行如下命令就会进行修改页面,按 i 进入编辑模式对提交内容进行修改,按ESC推出编辑模式。输入 :wq 退出并保存

git commit --amend

三、git stash pop出现冲突后回滚

3.1 场景说明

之前我使用 git stash 将修改保存在了暂存区中,但是在后期我已经不需要之前修改的这些内容了。然而我使用了 git stash pop 恢复了这些修改。导致了大量的冲突,这是我们并不想解决这些冲突所以就需要回滚。使用如下命令即可

git reset --hard

四、git cherry-pick出现冲突后回滚

4.1 场景说明

使用 git cherry-pick 从其他分支挑选部分提交到指定分支上时,输入了错误的commitId ,这时可以使用如下命令恢复到git cherry-pick之前的状态

git cherry-pick --abort

这篇关于git 盘点各种失误操作解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Android 12解决push framework.jar无法开机的方法小结

《Android12解决pushframework.jar无法开机的方法小结》:本文主要介绍在Android12中解决pushframework.jar无法开机的方法,包括编译指令、框架层和s... 目录1. android 编译指令1.1 framework层的编译指令1.2 替换framework.ja

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法

《SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法》在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为,本文给大家介绍了详... 目录问题根源正确写法示例永久解决方案为什么命令行不受影响?最佳实践建议问题根源SQLyog的语句分

Git可视化管理工具(SourceTree)使用操作大全经典

《Git可视化管理工具(SourceTree)使用操作大全经典》本文详细介绍了SourceTree作为Git可视化管理工具的常用操作,包括连接远程仓库、添加SSH密钥、克隆仓库、设置默认项目目录、代码... 目录前言:连接Gitee or github,获取代码:在SourceTree中添加SSH密钥:Cl

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

解决IDEA报错:编码GBK的不可映射字符问题

《解决IDEA报错:编码GBK的不可映射字符问题》:本文主要介绍解决IDEA报错:编码GBK的不可映射字符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录IDEA报错:编码GBK的不可映射字符终端软件问题描述原因分析解决方案方法1:将命令改为方法2:右下jav

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二: