Git的强软硬回退(三)

这篇是接着上文来的,小伙伴可以了解前两篇的内容

使用经验(一)

Git在idea中的实战使用经验(一)-CSDN博客

使用经验(二)

Git在idea中的实战使用经验(一)-CSDN博客

12.代码回退

12.1 使用Undo Commit(针对已经commit但未push的情况)

如果已经commit了代码,可以直接点击对应的历史记录,右键点击"Undo Commit"

12.2使用Reset(针对已Commit但未push的情况)

打开提交记录,选中要回退的版本右键,点击"Reset Curernt Branch to Here...."。

比如说会使用以下的实例进行提交

然后可以选择不同的回退模式:

12.2.1 Soft模式

回滚到指定的版本,并保留所有更改,这些更改将被重新提交。例如,如果想要撤销已经提交的更改,然后重新组织提交的内容事可以使用

12.2.2 Mixed模式

回退到指定版本,并保留所有更改,但是更改将不会被重新提交(Unversioned Files)中。这种模式适合撤销已经提交的更改,并保留这些更改,以备后续修改和提交。

与Soft最大的区别就是不再交给版本管理

12.2.3 Hard模式(慎用)

回滚到指定的版本,并删除指定版本之后的所有更改。这是一种比较彻底的回滚凡是,如果确定要完成撤销指定版本之后的所有更改可以使用

12.2.4 Keep模式:

回滚到指定版本,但是保留指定版本之后的更改。可以撤销指定版本之后的更改,并保留这些更改,以备后续修改和提交。与Hard的区别是暂存区保留,Hard是不会保留的

此时记住一定要选择强制推送,否则相当于没有回退,但是需要谨慎操作,并且需要确保团队成员知晓。reset的所有提交均可以使用强制提交更新到远程

相关推荐
比昨天多敲两行27 分钟前
Linux基础开发工具(下)
linux·运维·服务器
KmSH8umpK1 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第七篇
数据库·redis·分布式
九成宫1 小时前
Git 与远程仓库实操记录:克隆、配置、分支推送与问题排查
笔记·git·ssh
feng14561 小时前
OpenSREClaw - 故障复盘和变更评审双 Agent 案例
运维·人工智能
linux修理工2 小时前
chrome官方下载地址
运维·服务器
无忧智库2 小时前
IT运维正在经历一场真正的范式革命:从告警风暴到AIOps自主自愈的完整工程解构(WORD)
运维
BU摆烂会噶2 小时前
【LangGraph】持久化实现的三大能力——时间旅行
数据库·人工智能·python·postgresql·langchain
cn_lyg2 小时前
Linux的入门级常用操作命令
linux·运维·服务器
geneculture3 小时前
《智能通信速分多次传输技术(VDMT)》专利文件的全文汉英双语对照版本
服务器·网络·人工智能·融智学的重要应用·哲学与科学统一性·融智时代(杂志)·人机间性
l1t3 小时前
DeepSeek总结的DuckLake 入门
数据库