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.



相关推荐
NexTunnel1 小时前
公司老项目还在 SVN,远程维护怎么做更稳?
git·svn·gitlab·远程工作·nextunnel
满天星830357712 小时前
【Git】原理及使用(七) (多人协作 [下])
git
郡杰19 小时前
Git基础与开发平台搭建
git·后端
钟智强21 小时前
我警告了 329 天
git·php·wordpress·webshell
乐观的冷风1 天前
我们需要将文件添加到暂存区才能提交,而移除文件后是无法添加到暂存区的,那么怎么移除一个文件让GIT不再将其纳入版本控制呢?上图中GIT已经给出了说明:
git
tjl521314_211 天前
Git SSH Host Key Verification Failed 问题排查与解决
运维·git·ssh
嘶哈哈哈1 天前
[特殊字符] Git 协作指南
git
say_fall1 天前
【Git 精品详解】企业规范:企业级开发模型、Git Flow、发版流程规范、Code Owner 制度、事故应急回滚
大数据·linux·服务器·git·学习·elasticsearch
江畔柳前堤2 天前
第13章:docker生产环境部署实战
运维·git·docker·容器·代码复审
GuHenryCheng2 天前
【ESP32】ESP-IDF开发环境搭建(cursor)
git·stm32·单片机·学习