git提交错了想撤销,或者回退版本,意外删除想要恢复

本文详细介绍了如何使用Git撤销工作区和暂存区的修改,包括gitcheckout、gitresetHEAD的使用场景。同时,讲解了版本回退的步骤,如gitreset-hardHEAD^、gitlog--oneline等命令,以及如何恢复回退的版本。此外,还涵盖了意外删除文件的恢复方法。
摘要由CSDN通过智能技术生成

撤销操作

如果你的文件只是在工作区修改了,还没有提交到暂存区

git checkout -- 文件名

如果你的文件在工作区做了修改,并且也执行了 git add提交到了暂存区,这个时候执行git checkout -- 文件名,已经是无效的了,因为暂存区和工作区是一样的,再怎么覆盖内容也一样,这个时候应该使用

git reset HEAD

让 HEAD 覆盖暂存区,因为此时的HEAD 里面的内容还是上次提交的HEAD 的内容

git reset HEAD  文件a    //只将文件a 从暂存区取消
git reset HEAD  //将所有文件都从暂存区取消

git checkout HEAD
git checkout HEADgit checkout --文件git reset HEAD的合体,直接用它覆盖工作区和暂存区

版本回退以及切换

git reset -hard HEAD^  //一个^ 代表上一个版本,两个^代表上上个版, 
git reset -hard HEAD ~100 // 上一百个版本
git log --oneline //查看版本

如果你回退版本有后悔了,想要继续回到那个版本

git reset -hard 版本号
git  reflog //查看最后一次的提交的版本号,就是刚刚回退回来,想要恢复的版本号

删除和意外删除的恢复

删除

git rm //回同时删除工作区和暂存区的内容,谨慎处理

意外删除的恢复
第一种情况:还未执行 git commit提交到head的时候,直接使用 git checkout head文件名 就能恢复
第二种情况:执行 git commit提交到head的时候,就只能使git reset hard --HEAD^回退到上一个版本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值