2013-02-14 172 views
1

我遇到git问题,我无法检索被git pull覆盖的更改。恢复被git pull覆盖的更改

我已经开始在没有GitHub存储库的情况下开展一个项目的工作,而后来我做了一个项目。我在创建仓库时分叉了仓库,其中包括一个README文件。

我在本地添加了我想使用git add推送存储库的文件,但后来意识到我应该先从GitHub存储库中取出README

后拉,我试图推动我的变化,但相反得到的消息Everything up-to-date

我使用了ls命令来发现添加了git add的文件已被删除并被替换为README.md

这是我执行的命令:
commands

使用git log只是表明通过对README项目工作的其他人作出的提交。我想这是预料之中的,因为我没有提交任何提交。

使用git reflog表明我做了一次拉([email protected]{0}),但使用git reset --hard [email protected]{0}似乎没有做任何事情。我也试图git reset --hard [email protected]{"20 minutes ago"},但只有警告说日志只能回到我的第一次拉。

有没有办法恢复覆盖拉的未提交的更改?

编辑

我为没做功课道歉,我注意到侧栏上的一个问题,这个问题是一个重复:Git pull deleted uncommitted changes

我将要使用丢失 - 找到(cd .git/lost-found/other)尝试恢复我的更改。

有没有一个更容易的方法来恢复变化比丢失发现,我想是新的问题。如果没有,我会用我使用的方法回答自己。

回答

1

正如问题中提到的,我用来恢复我的更改的解决方案是使用git的lost-found。

我用cd .git/lost-found/other/把我自己带到迷路的地方,找到文件的位置。

我打开目录中的每个文件以查看它的名称是什么,然后将其移动到正确的目录中并使用正确的名称。

我用git add添加更改并提交它们,所以现在我不会再丢失它们。