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.



相关推荐
2301_8098152521 小时前
Git和Gitee基本使用教程
git·gitee
雨翼轻尘1 天前
01_Git概述及基本操作
git·概述·基本操作
程序员果子1 天前
CrewAI :当 Agent 学会团队协作
人工智能·git·python·多智能体·agent框架
‎ദ്ദിᵔ.˛.ᵔ₎1 天前
Git GDB/CGDB调试器
git·gdb
他们都叫我GPT侠1 天前
【无标题】
git·github
果汁华1 天前
CLI 命令行与 Python 框架实战
git·python·github
zzzzzz3101 天前
我用 AI Agent 重构了日常开发工作流,效果出乎意料
人工智能·git·github
我叫黑大帅2 天前
git 的 NFD 与 NFC 有什么区别?为什么我有个文件在 NFC 中间不会被当成改动,在 NFD 中就会当成改动
git·面试·github
呆萌很2 天前
Git push 408 超时、远程断开解决办法
git
Lesile2 天前
Hands-on Git experience
git