git reset之后找回本地未提交的代码

头脑发热使用了git reset命令回退到了之前的一个版本,结果把本地没有提交的代码给覆盖掉了.....

作为一个bug员自然是想恢复,毕竟重新写还得再测一遍,本着能懒一点是一点的原则,开始了恢复代码的过程,保证以后再也不手贱le.....

首先我用的是eclipse的工具,或者别的工具大部分应该都适用,如果你没有使用工具,请忽略我的这篇文章....

右击你修改过的文件,应该还能记得吧。。。

Team-->Show Local History

看到一堆的缓存:

找到你reset之前的最近的一个时间。

右击你的文件  :replace with -->Local History.

大功告成!

原文地址:https://www.cnblogs.com/syq816/p/10115493.html

时间: 2024-07-28 23:03:36

git reset之后找回本地未提交的代码的相关文章

GIT 如何删除某个本地的提交

一.rm后要commit一下才会生效,但这样只是让文件不再出现在今后的版本中,文件副本仍然会在.git/下(这样git才能让误删的文件恢复). 要彻底消灭文件副本,那就要让文件彻底从历史中消失,分两种情况: 1.如果你的文件添加记录是最近1次,而且没有别的更改,可以简单使用reset --hard commit_id来彻底回溯,然后gc一下再上传就没问题了. 2.如果是在你N次提交以内的某次,而且同时还有别的重要提交,那最好用rebase合并一下这几次提交记录(包括rm的commit),然后再g

使用Git命令窗口将本地工程提交至远程GitHub

目标: 1.解决的问题是如何通过Git命令窗口将本地工程提交至GitHub. 2.方便园友的同时也方便自己以后解决此类问题. 步骤: 1.首先登陆GitHub网站https://github.com/ 2.新建Repository 3.新建TicketBrushSystem的Repository,其中红框的几处可以根据实际情况自行填写. 成功后会出现如下界面 4.将TicketBrushSystem克隆到本地 4.1.使用Git Bash将工作目录切换到本地的工程文件目录,如,笔者的项目工程位于

git commit --amend 修改还未提交到远程分支的 commit 信息

有时候用 git commit -m 提交时,可能没写好或者误操作导致提交的信息不合适,但你还没有 push 到远程分支时, 可以使用 git commit --amend 修改上一次的提交信息. 操作示例 如下: git commit --amend 后会出现编辑界面,如下 可以在最上面红框的地方,修改要提交的信息,然后按Ctrl + o (WriteOut),如下 然后按回车保存,回到上一个界面后按 Ctrl + x 退出即可. 最后,你就可以放心的 push 到远程分支啦 ^.^

git revert VS git reset

最近在网上搜索git revert 和git reset 的用法对比,实际操作的时候,发现根本行不通,自己摸索了下,记录下这篇文章. git revert:回退某次提交,并重新提交,相当于代码恢复修改前,但是服务器上有两次提交log: git reset:回退某次提交,同时回退修改log,但是修改内容回退到本地暂存区,由用户确定丢弃(checkout)或者重新提交. 假设当前有3个commit,git  log如下: commit3: add test3.c commit2: add test2

git reset 版本回退

基本参数: reset 参数–soft. –mixed. –hard,会对状态 working.index.head 进行重置 git reset --mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息git reset --soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级.如果还要提交,直接commit即可git reset  --hard:彻底回退到某个版本,本地的源

git revert与git reset

共同点:此次提交的代码会被退回到暂存区 不同点: git revert:撤销某次操作,用新的commit去标记旧的commit失效,即抵消操作.git log中会有一次提交的commit,有一次撤销提交的commit git reset:撤销某次提交,将HEAD回退,即删除新的commit.git log中没有新的commit 注:日后继续merge以前的老版本时,因为git revert是用一次逆向的commit“中和”之前的提交,因此日后合并老的branch时,导致这部分改变不会再次出现.

git revert和git reset的区别

原文:http://blog.csdn.net/koffuxu/article/details/6731876 git revert 是撤销某次操作,此次操作之前的commit都会被保留 git reset 是撤销某次提交,但是此次之后的修改都会被退回到暂存区 具体一个例子,假设有三个commit, git st: commit3: add test3.c commit2: add test2.c commit1: add test1.c 当执行git revert HEAD~1时, commi

git reset命令

git reset有两种用法,一种用法在命令中包含路径<paths>,这种方法不会改变引用,也不会改变工作区,而是用指定提交状态下的文件替换掉暂存区的文件,相当于取消之前git add操作. 第二种方法,不使用路径<paths>则会重置引用. 命令格式为:git reset [--soft | --mixed | --hard] [<commit>] 参数--soft  只更改引用的指向,不更改缓存区和工作区 参数--mixed或不使用参数 既更改引用也重置缓存区 但是

git撤销commit,但未git push的命令

在git push的时候,有时候我们会想办法撤销git commit的内容 1.找到之前提交的git commit的id git log 找到想要撤销的id 2.git reset –hard id 完成撤销,同时将代码恢复到前一commit_id 对应的版本 3.git reset id 完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改--------------------- 作者:在路上的码农 来源:CSDN 原文:https