zoukankan      html  css  js  c++  java
  • 撤销 git reset --hard HEAD~1

    方法一:

    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

     

  • 相关阅读:
    网络流24题-分配问题
    网络流24题-圆桌问题
    git ssh
    SQL Server 添加说明 语句
    问题思路
    数据库事务和锁
    Castle Windsor
    Flask学习笔记11之特殊的装饰器
    python中的"环绕通知"
    Flask学习笔记10之flash
  • 原文地址:https://www.cnblogs.com/luojinping/p/3283505.html
Copyright © 2011-2022 走看看