git版本回退命令_git执行版本回退的步骤及注意点

版本回退步骤

一、git log 命令,查看提交历史记录

ps: git log 命令显示从最近到最远的显示日志,我们可以看到最近三次提交;最近的是第三个版本,上一次是第二个版本,第一次是第一个版本; 如果觉得上面的 git log 显示的信息太多的话,可以使用命令 git log --pretty = online (注意是两个杠哦)

二、进行版本回退操作

方法1: git reset –hard HEAD ^   ( ^ 表示回到上一个版本,如果需要回退到上上个版本的话,将HEAD^改成HEAD^^, 以此类推。那如果要回退到前100个版本,这种方法肯定不方便,我们可以使用简便命令操作:git reset –hard HEAD~100 );

方法2 :git reset –hard 版本号,可以通过如下命令获取到版本号: git reflog

git log 与 git reflog 的 区别

git log: commit 的版本日志 包含提交的版本 操作者 日期 (方便查看commit的版本,但是版本回退后,使用git log 看不到回退版本号之后的版本记录)

commit ce0d69899b65fb22708f2f4ef48de11a05d0acc2

Author: lowmanisbusy<910472036@qq.com>Date: Thu May17 23:40:36 2018 +0800

git reflog: 使用git 命令进行操作的日志  包括当前步骤所在哪个版本(一个commit 产生一个版本, 指定版本回退只能回退到该commit) 以及操作的具体内容

版本回退后,仍然可以看到所有的版本记录 方便查看每个操作步骤所在的版本,可以根据版本号自由前进后退

ce0d698 HEAD@{0}: commit: a=61a65396 HEAD@{1}: checkout: moving fromdev to master

4f8ad59 HEAD@{2}: commit (merge): 修改

4e45386 HEAD@{3}: checkout: moving frommaster to dev

1a65396 HEAD@{4}: commit: 添加一行a=2ac475da HEAD@{5}: checkout: moving fromdev to master

4e45386 HEAD@{6}: commit: a=1ac475da HEAD@{7}: checkout: moving frommaster to dev

ac475da HEAD@{8}: commit (initial): 创建文件1.py

版本回退,导致部分代码丢失,git reset --hard后的本地代码找回(commit和没有commit但add了两种情况)

git reset --hard commid_id这个命令是强制回退到某一次历史commit的版本,并清除本地修改!

解决办法:

一、没有commit,没有add

对不起,找不回了,放弃吧。

二、没有commit,但是有add操作

执行:git fsck --lost-found

在项目git目录下的 /.git/lost-found/other里有你add过的文件。挨个看看,能救回来多少是多少吧。

再附送一个命令:find .git/objects -type f | xargs ls -lt | sed60q

找回本地仓库里边最近add的60个文件。找回思路同上。

三、执行过commit

执行 git  reflog

会有类似下面的东西,挑你想回退的地方,一般是那次commit之前的head,例如 HEAD@{7}

执行 git reset --hard HEAD@{7}

20200602112726762357.png

心得:执行网上查的命令要当心啊,执行不懂的命令要当心啊啊啊啊

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值