无需推送即可从重置提交中恢复

时间:2013-03-04 07:52:09

标签: git commit reset recover

我昨天有两次提交但由于没有互联网连接而无法推送。之后,我编写了一些代码并意识到它非常混乱,并希望将其恢复为HEAD提交。我做了git reset --hard HEAD,我的一些文件(我很确定我已经提交)丢失了。现在我正在查看一个星期的版本,我的git状态显示为Your branch is ahead of 'origin/master' by 2 commits。一些“丢失”的文件在我的git状态中列为已修改,即使它们是我系统上的空文件(只是包含标题)。

我的代码可以恢复吗?

1 个答案:

答案 0 :(得分:0)

如果您确实提交了提交,则可以使用git reflog查看修订历史记录。它列出了克隆上独立于分支和标记执行的所有操作。

但是,如果您对包含本地更改(无论是否上演)的回购邮件进行git reset --hard HEAD,那么它们就会丢失 - 这似乎就是您的情况。运行git log时,您是否仍然在日志中看到昨天提交的2次提交?这是由消息表示你的分支在'提交/主人'之前由2提交