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.



相关推荐
郑州光合科技余经理7 小时前
同城系统海外版:一站式多语种O2O系统源码
java·开发语言·git·mysql·uni-app·go·phpstorm
郑州光合科技余经理10 小时前
基于PHP:海外版同城O2O系统多语言源码解决方案
java·开发语言·git·spring cloud·uni-app·php·uniapp
Violet_YSWY11 小时前
git变基删除中间版本,使用drop出现文件丢失问题,原因及解决方案
git
dragonchow12313 小时前
git sparse-checkout, 只拉取部分目录
git
醇氧15 小时前
Git 合并冲突提示 Local Changes Prevent from Merge
运维·git
亚林瓜子19 小时前
git中移除.DS_Store文件夹和相关文件
git·mac·ignore·.ds_store
深耕半夜21 小时前
git的使用手册
git
pingzhuyan21 小时前
linux常规(shell脚本)-启动java程序-实现快捷git拉取,maven打包,nohup发布(无dockerfile版)
java·linux·git·maven·shell
大柏怎么被偷了21 小时前
【Git】Git的认识与安装
git
切糕师学AI21 小时前
如何永久忽略本地配置文件修改:Git 与 TortoiseGit 实战指南
git