当前位置:   article > 正文

git checkout或者git pull后本地未提交代码丢失问题解决_git pull后本地代码不见了

git pull后本地代码不见了

前言

我们在使用git管理代码时通常要提交和拉取代码,但是某些时候存在误操作的行为。例如代码还没提交就做了checkout、pull动作,导致写了几天的代码没有备份就丢失或者被覆盖了

解决方法

  1. 恢复前提
    在执行git checkout master或者git pull命令前,执行过git add .及commit命令git commit -m "xxx",git工具才能给你记录你的版本变化(本地的),否则丢失代码可能无可挽救
  2. 回滚
    (1)查看历史本地git版本:git reflog。运行结果如下图所示,现在需要回滚到checkout之前的版本,也就是commit:add new page of xxx那一个版本,该版本索引是最前面的字符串 210ddf5
    在这里插入图片描述
    (2)运行回滚命令git reset --hard 210ddf5,运行结果如下图所示,那么就成功回滚了。
    在这里插入图片描述

排坑

  1. 有些博客写的回滚命令是git reset --hard HEAD@{1},其中花括号里面的数字对应回滚版本id。但是本人运行不能回滚,出现错误(error: unknown switch `e’)如下图。
    在这里插入图片描述

参考文献

git学习教程
通过git命令回滚
通过编译器的功能恢复文件的方法

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/541852
推荐阅读
相关标签
  

闽ICP备14008679号