IDEA实现回退提交的git代码(四种常见场景)

 更新时间:2025年05月23日 15:32:21   作者:codingPower  
这篇文章主要介绍了IDEA实现回退提交的git代码(四种常见场景),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

在平时工作中我们需要把本地修改的代码提交到远端仓库,有时候发现提交的分支出错或者多提交非版本代码,这时候想要撤回我们的提交

简单介绍几种IDEA提交代码回退的方式:

  1. Undo Commit
  2. Revert Commit
  3. Reset Current Branch here
  4. 合并出错,出现大量git log,如何找到自己提交的git 并回退

1.已提交commit,还未push到远端(Undo Commit)

1.1选中提交了但是还没有push到远端的git 记录,右键undo Commit

2.已提交commit并push到远端(Revert Commit)

2.1选择提交且推送到远端的那条记录"xxxx",右键Revert Commit

2.2 会生成一条Revert “xxxx” 的Commit记录

2.3直接push到远端,则撤销了此次提交

2.4如果想要你提交的代码回到本地,点击提交记录,在右侧代码明细清单中右键cherry-pick selected changes

3.已提交commit并push到远端(Reset Current Branch to Here)

3.1 选择退回到指定的版本(一般是你提交的git记录的下一条) 右键 Reset Current Branch to Here ,选择以下几种方式的一种

  • Soft:回滚后,保留修改的文件到本地(常用)  git reset --soft xxxxid
  • Mixed:保留修改的文件到本地,但不保留已提交的git索引
  • Hard:回滚到选择的版本,所有提交和未提交的修改都将丢弃(常用)git reset --hard abcdef
  • Keep:回滚到选择的版本,已提交的将被丢弃,但保留了本地未提交的修改内容

3.2 强制推送到远端 Force push

4.合并分支出错,导致出现大量git log记录

今天合并分支的时候,一不小心把整个分支合并到了另外项目的分支上,然后git log 上面显示了很多记录,都是合并分支的历史git log,导致通过idea没办法回退,通过找到文件夹,找到引用记录,然后发现了我合并的那个记录,在右键重置到了没合并之前的分支记录下。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • dm.jdbc.driver.DMException网络通信异常的解决过程

    dm.jdbc.driver.DMException网络通信异常的解决过程

    最近一个项目里面出现了一个比较诡异的问题,给大家分享下,这篇文章主要给大家介绍了关于dm.jdbc.driver.DMException网络通信异常的解决过程,需要的朋友可以参考下
    2023-02-02
  • java中java.util.Date和java.sql.Date之间的转换的示例

    java中java.util.Date和java.sql.Date之间的转换的示例

    java.util.Date是java.sql.Date的父类,有时候在和SqlServer数据库打交道时,也会遇到,本文主要介绍了java中java.util.Date和java.sql.Date之间的转换的示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-05-05
  • 微信支付java版本之Native付款

    微信支付java版本之Native付款

    这篇文章主要为大家详细介绍了微信支付java版本之Native付款,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • idea工具配置隐藏文件及文件夹方式

    idea工具配置隐藏文件及文件夹方式

    这篇文章主要介绍了idea工具配置隐藏文件及文件夹方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • java跳板执行ssh命令方式

    java跳板执行ssh命令方式

    本文分享了在Java中使用跳板机执行SSH命令的方法,并推荐了一些Maven依赖,希望这些信息对大家有所帮助
    2024-12-12
  • SpringBoot配置数据库密码加密的方法

    SpringBoot配置数据库密码加密的方法

    由于系统安全的考虑,配置文件中不能出现明文密码的问题,本文就给大家详细介绍下springboot配置数据库密码加密的方法,下面话不多说了,来一起看看详细的介绍吧,需要的朋友可以参考下
    2023-08-08
  • SpringBoot项目接入MQTT的详细指南

    SpringBoot项目接入MQTT的详细指南

    MQTT是一种轻量级的消息传输协议,特别适用于物联网(IoT)场景,具有低带宽、高延迟网络环境下的优势,SpringBoot作为流行的 Java开发框架,能够方便地与MQTT集成,实现高效的消息通信,本文将详细介绍如何在SpringBoot项目中接入MQTT,需要的朋友可以参考下
    2025-03-03
  • Java合并两个List后并去掉重复项的两种做法

    Java合并两个List后并去掉重复项的两种做法

    工作中很多时候需要用到合并两个List并去除其中的重复内容,这是一个很简单的操作,实现的方法也多种多样,这篇文章主要给大家介绍了关于Java合并两个List后并去掉重复项的两种做法,需要的朋友可以参考下
    2023-10-10
  • java 中用split分割字符串,最后的空格等不被拆分的方法

    java 中用split分割字符串,最后的空格等不被拆分的方法

    下面小编就为大家带来一篇java 中用split分割字符串,最后的空格等不被拆分的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • idea中lombok的用法

    idea中lombok的用法

    lombok是开源的代码生成库,是一款非常实用的小工具,在更改实体类时只需要修改属性即可,减少了很多重复代码的编写工作,今天小编给大家介绍idea中lombok的用法,感兴趣的朋友一起看看吧
    2021-12-12

最新评论