码迷,mamicode.com
首页 > 其他好文 > 详细

Git撤销提交

时间:2019-12-31 14:30:00      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:name   push   内容   out   覆盖   了解   恢复   file   使用   

Git的几种状态

未修改
       原始内容
已修改    ↓   
       工 作 区
已暂存    ↓    git add
       暂 存 区
已提交    ↓    git commit
       本地仓库
已推送    ↓    git push
       远程仓库

 

注意:下面所有命令每一个代码段是相互独立的,为了解决一个问题,请不要使用多个代码段。所有命令均经过本人测试,由于测试环境是简单的Git仓库没有过多的数据,可能在复杂环境回出现错误。如发现问题请直接评论区指出。请仔细分析使用情况,丢失数据与本人无关。

已修改 未暂存

已经修改了文件,还未进行git add
即工作区的内容不想要了。

恢复方法

使用以下任意命令

git checkout .
git checkout -- <FILENAME>
git reset --hard

 

已暂存 未提交

已经进行了git add,还未进行git commit
即暂存区的内容不想要了

恢复方法

使用以下任意命令

git reset
git checkout .
git reset --hard
git reset HEAD
git reset HEAD -- <FILENAME>

 

已提交 未推送

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

恢复方法

使用远程仓库覆盖本地仓库

git reset --hard origin/master

 

已推送

已经进行了git push

恢复方法

回滚本地仓库,强制推送覆盖远程仓库

git reset --hard HEAD^
git push -f

 

其他情况

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

即HEAD指针指向该节点

git reset --hard <COMMITID>

Git撤销提交

标签:name   push   内容   out   覆盖   了解   恢复   file   使用   

原文地址:https://www.cnblogs.com/T8888/p/12124088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!