Git 撤销 删除(六种情况下的撤销)

1. 已修改 未暂存

已经修改了文件,还未进行 git add。

即工作区的内容不想要了。

恢复方法

使用以下任意命令

git checkout .

git checkout -- <FILENAME>  // <FILENAME> 为文件名,把 <FILENAME> 这个文件在工作区的修改全部撤销

git reset --hard

2. 已暂存 未提交

已经进行了 git add,还未进行 git commit

即暂存区的内容不想要了

恢复方法

使用以下任意命令

git reset git checkout .

git reset HEAD // 删除添加到暂存区的内容,只操作暂存区

git reset --hard // 既修改暂存区也修改工作区

git reset HEAD -- <FILENAME>

3. 已提交 未推送

已经进行了git commit,还未进行 git push

恢复方法

使用以下任意命令

git reset HEAD^ // 注意 HEAD 就是回退到当前版本,git reset HEAD^ 回退到上一版本

git reset <版本号> // git log 去查版本号

git reset --soft HEAD^ // 撤销 commit,本地修改还会存在

git reset --hard origin/master // 使用远程仓库覆盖本地仓库

4. 已推送

已经进行了git push

恢复方法

回滚本地仓库,强制推送覆盖远程仓库( 切记回滚后不要马上git pull )

顺序执行以下两个命令

git reset --hard HEAD^

git push origin HEAD --force // 强制提交一次,之前错误的提交就从远程仓库删除

git reset --soft HEAD^ // 撤销 commit,本地修改还会存在

5. 撤销合并

进行了git merge

恢复方法

git merge --abort

6. 其他情况

丢弃某个节点后的全部提交

即 HEAD 指针指向该节点

git reset --hard <COMMITID>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值