返回到之前的Checkout后,使用Git恢复已删除的文件

时间:2014-09-28 09:44:14

标签: git git-commit git-checkout

我遗憾地删除了一些我用Git跟踪的文件并且很难恢复这些文件。

更详细一点,我在git存储库中提交了一个文件。然后,我向该存储库添加了另外三个文件,并键入git add <FILENAME>git commit -m "blabla"。我键入了git log,并且给人的印象是我没有单独跟踪文件,而是整个存储库。但是,我希望每个文件都有一个版本控制。然后我使用git checkout恢复到版本,当时我只提交了一个文件,其他三个文件未被跟踪。现在,删除了三个文件。不幸的是,git log只返回第一个提交,而不是我后来提交的提交。

有人可以告诉我如何恢复丢失的文件?

1 个答案:

答案 0 :(得分:2)

git log显示整个存储库的日志。如果您只想查看一个文件的日志,请使用:

git log -- my/file/path

你可以通过再次检查分支来获取git下的文件。例如,

git checkout master

在此之后,您将获得提交的文件。如果你真的想回到第一次提交并将所有新文件稍后添加为未跟踪,那么请执行以下操作:

git reset commit_hash

重置后,您将在工作目录中获取新文件作为未经跟踪的文件,您必须再次提交。