git stash恢复
今天下午在使用Git命令进行代码管理时,因为自己一时疏忽直接把自己一天的劳动成果给弄丢了,这还了得,吓死宝宝了。真的,相信有代码丢失的朋友肯定能体会我当时的心情,不能体会我心情的那就祝你们也丢次代码,这样就可以深刻体会到我的心情了。哎,然后冷静了两秒,妈蛋,不能就这么认栽吧,老子可不想再写一遍那恶心的UI还有一些页面逻辑!于是,打开百度问度娘!哎,别说,还真让我找到了!顿时有种拨开云雾见天日,守得云开见月明的心情。于是特写此博客希望大家以我为戒,千万不要因为自己的疏忽酿成不必要的麻烦,就算酿成了错误也要相信一定有什么办法可以解决的!对!就是这样!
首先我先给大家讲一下我是如何丢弃代码的:
1.git stash将写好的文件暂存缓存区
2. git pull origin develop从develop分支下载最新代码
3. 发现没啥冲突,然后准备git stash pop
4. 在git stash pop时候发现有个文件改了,然后准备继续git stash然后drop一个文件
5. 对!你没看错!就是这里!我竟然打错了git stash打成了git status!然后!直接git stash drop stash@{0}然后git stash pop!然后!对!
没有然后了!
6. 错误就这样发生了,今天刚写了一天的代码啊,我凑!不行!不能怂,就是干!打开度娘,哎,别说,还真有人解决了这个问题,顿时。。。心花路放啊!
7. 好,现在将方法告知!采用以下命令,即可找回丢弃代码!
8. 首先git fsck --lost-found这个就是可以看下自己最近的一些删除的提交。
然后找到上述你刚才git stash drop stash@{0}时成功删除的id。例如:
Dropped stash@{0} (e2c07caec2b995ba75ce1abd15796c6f1686d532)
然后拷贝e2c07caec2b995ba75ce1abd15796c6f1686d532查找git fsck --lost-found列出的删除的提交id,
如果有恭喜你,离找回只差一步,你可以先用
git show e2c07caec2b995ba75ce1abd15796c6f1686d532看一下是不是你丢弃的改动文件,
如果是,直接git merge e2c07caec2b995ba75ce1abd15796c6f1686d532即可找回!
后来想想其实这次丢失文件未尝不是一件好事,充分显示了git的强大,也又get到了新技能,简直棒棒哒!
不过还是奉劝大家,能别出错尽量别出错,万一出错出的太狠,可不一定真能再把错误纠正回来的。
git stash恢复的更多相关文章
- git pull 显示的冲突---解决办法git stash
git pull:显示本地仓库与远程仓库有冲突 Please, commit your changes or stash them before you can merge. Aborting 解决办 ...
- git stash 暂存恢复和文件误删恢复
git commit提交文件,服务器返回本地文件有修改. 1.git stash :暂存本地代码 2.git pull origin develop : 获取远程分支代码 3.git stash po ...
- 使用git stash命令保存和恢复进度
使用git stash命令保存和恢复进度 git stash 保存当前工作进度,会把暂存区和工作区的改动保存起来.执行完这个命令后,在运行git status命令,就会发现当前是一个干净的工作区,没有 ...
- git stash 保存和恢复进度
1. stash当前修改 git stash会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,用于后续恢复当前工作目录. 比如下面的中间状态,通过git stash命令推送一个新的储藏,当前的工 ...
- Lunix git stash clear 或者 git stash drop后恢复的方法
首先输入 git fsck --lost-found 会看到 一条一条的记录 这里的"dangling commit ..."你可以理解为记录的是你stash的id(经测试,该id ...
- git stash 切换分支以后 恢复
场景: 我在A分支开发 突然要去B分支改东西 但是A分支还没开发完 B又比较着急 又不想提交A 但是不提交又切换不到B 于是就发现有个git stash 将当前修改(未提交的代码)存入缓存区,切换分支 ...
- Git Stash紧急处理问题,需要切分支
在开发过程中,大家都遇到过bug,并且有些bug是需要紧急修复的. 当开发人员遇到这样的问题时,首先想到的是我新切一个分支,把它修复了,再合并到master上. 当时问题来了,你当前正在开发的分支上面 ...
- 每天一命令 git stash
git stash 命令是用于保存当前进度的命令.该命令会保存当前工作区的改动.保存的改动是已经跟踪的文件的改动,对于未跟踪的改动stash是不会保存的. git stash 命令常用于分支切换的 ...
- Git stash 常见用法
Git stash git stash这个命令可以将当前的工作状态保存到git栈,在需要的时候再恢复 1.1 git stash 保存当前的工作区与暂存区的状态,把当前的工作隐藏起来,等以后需要的时 ...
随机推荐
- Android的Activity屏幕切换动画-左右滑动切换
. --> 在Android开发过程中,经常会碰到Activity之间的切换效果的问题,下面介绍一下如何实现左右滑动的切换效果,首先了解一下Activity切换的实现,从Android2.0开始 ...
- 利用Lambda获取属性名称
感谢下面这篇博文给我的思路: http://www.cnblogs.com/daimage/archive/2012/04/10/2440186.html 上面文章的博主给出的代码是可用的,但是调用方 ...
- linux桌面环境gnome,kde,xfce,lxde 使用比较(转)
Linus Torvalds大神前几日在 Google+上表示,GNOME 3"无可容忍的凌乱",改投Xfce桌面环境.下面就GNOME, KDE, XFCE和 LXDE略作比较. ...
- XE3随笔11:Merge、Clone、ForcePath
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For ...
- 信心题--FUOJ2226(莫队算法)
http://acm.fzu.edu.cn/problem.php?pid=2226 信心题,还说是信心题,题目给的真好.但是一点都不像信心题. 又是一个新的算法,莫队算法 莫队算法是一个用数组就可以 ...
- text-indent
<div class="top wd"> <div class="con fl "><a href="#"&g ...
- java byte[]生成
1. ByteArrayOutputStream extends OutputStream 提供了一个byte数组,和记录写入数组值个数的类. a.实现了write(int)这个抽象函数,这里默认只写 ...
- P1403约数研究
洛谷1403 约数研究 题目描述 科学家们在Samuel星球上的探险得到了丰富的能源储备,这使得空间站中大型计算机"Samuel2"的长时间运算成为了可能.由于在去年一年的辛苦工作 ...
- 使用adb 查询data/data下的数据库
1.用cmd打开adb 2.输入adb shell 3.cd到数据库所在目录 4.输入sqlite3 person.db(person.db为要操作的db名称,根据需要修改) 5.输入sql语句(每个 ...
- 奇葩问题之ToolBar返回键失效
今天遇到一个奇葩问题,先说现象:接口调用成功,但是在后台业务上报错时(比如:手机号已经被注册过时,接口调用成功,但是后台返回了错误信息:手机号已被注册),toolBar的返回键失效了. 后来仔细看了一 ...