博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
撤销 git reset --hard HEAD~1
阅读量:6158 次
发布时间:2019-06-21

本文共 975 字,大约阅读时间需要 3 分钟。

方法一:

1.先通过git reflog找到上一次的历史提交记录id,git如果没有特意设置,是会保存记录一段时间的(a few days or a month)

2.git reset --hard [id]

 

方法二:

git reset --hard HEAD@{1}

直接回到刚才的那个结点,{}中表示的是结点的序号

 

方法一的例子如下:

$ git init

Initialized empty Git repository in .git/

 

$ echo "testing reset" > file1

$ git add file1

$ git commit -m 'added file1'

Created initial commit 1a75c1d: added file1

 1 files changed, 1 insertions(+), 0 deletions(-)

 create mode 100644 file1

 

$ echo "added new file" > file2

$ git add file2

$ git commit -m 'added file2'

Created commit f6e5064: added file2

 1 files changed, 1 insertions(+), 0 deletions(-)

 create mode 100644 file2

 

$ git reset --hard HEAD^

HEAD is now at 1a75c1d... added file1

 

$ cat file2

cat: file2: No such file or directory

 

$ git reflog

1a75c1d... HEAD@{0}: reset --hard HEAD^: updating HEAD

f6e5064... HEAD@{1}: commit: added file2

 

$ git reset --hard f6e5064

HEAD is now at f6e5064... added file2

 

$ cat file2

added new file

 

转载于:https://www.cnblogs.com/luojinping/p/3283505.html

你可能感兴趣的文章
jq弹出层
查看>>
Pug+Stylus+Bootstrap入门
查看>>
nginx+memcache+tomcat配置(新手笔记)
查看>>
查看网络连接数
查看>>
MicroPython 1.8.6重新支持512K的模块
查看>>
docker部署springboot应用
查看>>
svn备份遇到的问题
查看>>
OpenStack-Pike(一)
查看>>
linux sort 命令详解
查看>>
优雅且高效的使用Chrome Developer Tools
查看>>
ios device provisioning
查看>>
swift编写命令行工具
查看>>
博客收藏
查看>>
spring的controller是单例模式,但是是多线程,各个线程之间不影响
查看>>
MySQL多实例实现半同步复制
查看>>
mySQL教程 第5章 插入 更新与删除数据
查看>>
js函数的内部属性---arguments,callee,caller
查看>>
关于C10K、异步回调、协程、同步阻塞
查看>>
米聊PK微信:微信是一朵奇葩
查看>>
ext 部署到 tomcat服务器下,通过http8080端口查看
查看>>