18

所以我只是做了一个 git --reset soft 来回到之前的提交。现在如果我想回到我之前的最新提交怎么办?即:最新的提交?我尝试做 git log,但那里列出的提交没有最新的提交。

4

2 回答 2

41

git reset如果您只想返回并查看旧提交,则使用该工具是错误的,因为正如您所发现的,在许多模式下,它实际上通过删除提交来改变历史记录。

如果您想暂时在工作树中恢复旧的提交,只需使用git checkout. 在这种情况下,git checkout HEAD^将带您返回一个提交。git checkout HEAD~3将带您退回三个提交,依此类推。或者你可以给它从git log.

然后,您可以通过执行git checkout master(替换master为任何分支的名称)返回到最新的提交。

于 2012-07-13T23:52:48.350 回答
27

你想基本上撤消你的重置吗?它不会出现在您的 git 日志中,因为您已将其还原。但是它会显示在您的

git reflog

这将为您提供所有不同分支的列表。

git reset HEAD@{1}

如果您的重置是您做的最后一件事,应该可以解决您的问题。

于 2012-07-13T23:39:22.020 回答