git 后悔药

前言

自上而下,撤销可以分为从远程库撤销,从本地库撤销,从暂存库撤销。

例子:代码已经提交了三个记录到远程库,分别对应了记录1,内容1,记录2,内容2,记录3,内容3. 现在应该写4,但是不小心写了5并且还提交了。

这个时候肯定要撤销的。

步骤:

1、先本地撤销:

java 复制代码
git reset [--soft | --mixed | --hard --keep] [HEAD|版本号]

2、然后推送

java 复制代码
git pull origin master
解决冲突
git push origin master

PS: 提交记录3里面是内容3,所以这是我错误提交记录前最新的版本,reset到这个版本。

撤销模式说明:

四种模式在撤销回滚时,都会让HEAD指针改变指向到指定版本。

java 复制代码
Soft:回滚代码到指定版本时,工作区文件不会做改变,相较于指定版本多出的更新将会被暂存等待提交
Mixed:回滚代码到指定版本时,工作区文件不会有改动,但是暂存会被清空
Hard:回滚到指定版本时,工作区内容会回滚到指定版本,暂存也会被清空(慎重,未提交的代码有丢失风险)
Keep:回滚到指定版本时,工作区内容会回滚到指定版本,暂存区未提交内容会保存

一般选择mixed

修改为正确内容4

pull以下,会发现有冲突,解决冲突,选择本地的代码,然后正常push就可以了

我这里前面操作过了,所以正确内容为6,错误内容为7.



相关推荐
vibecoding日记3 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger4 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思5 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享5 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_426003966 天前
git切换当前分支到远程分支
git
ON10N6 天前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code