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的所有提交均可以使用强制提交更新到远程

相关推荐
瓜酷月..2 小时前
GIT(了解)
git
(Charon)2 小时前
基于 epoll 的高并发服务器原理与实现(对比 select 和 poll)
运维·服务器
Jtti3 小时前
在 Debian 系统上清理缓存的方式和具体操作方法
运维·缓存·debian
williamdsy3 小时前
【postgresql】JPA LIKE 查询触发 PostgreSQL `text ~~ bytea` 报错的排查与最佳实践
数据库·postgresql
伐尘3 小时前
【mac】如何在 macOS 终端中高效查找文件:五种实用方法
运维·macos
川石课堂软件测试3 小时前
Oracle 数据库如何查询列
linux·数据库·sql·功能测试·oracle·grafana·prometheus
zzu123zsw4 小时前
第15章 Jenkins最佳实践
运维·jenkins
万物得其道者成5 小时前
Cursor + 云效 DevOps MCP
运维·devops
wanhengidc5 小时前
云手机运行是否消耗自身流量?
运维·科技·安全·游戏·智能手机