git checkout 上一个提交后缺少日志项

laximzn5  于 2023-09-29  发布在  Git
关注(0)|答案(3)|浏览(135)

在git中使用以下命令回滚到上一次提交后:

git checkout <commit hash>

然后执行一个git log,在我刚刚 checkout 的提交之后的所有日志条目都丢失了。
我如何在 checkout 前一个提交后获得所有提交的列表?我需要检查最新的,并及时前进。

bkhjykvo

bkhjykvo1#

git log显示当前HEAD的日志。假设您要查看日志的分支是“master”,要再次查看“full”日志,您可以执行以下操作之一:
checkout 分支,然后运行git log:

git checkout master
git log

传递对git log的引用作为HEAD:

git log master

然后改为使用“future”提交的引用来 checkout 。
如果您想查看Git引用的更改日志(例如:分支和HEAD),使用git reflog

ssm49v7z

ssm49v7z2#

git checkout <commit hash>没有回滚。
如果你想“回滚”提交,你可能想尝试git reset --hard <commit hash>
如果你想要master分支的日志(如果master是你所在的分支),你必须这样做:

git log master

目前,你 checkout 了一个特定的提交,日志将只显示该提交之前的提交,而不会显示之后的提交。
另外,如果你已经完成了这个 checkout ,在这个提交上进行了提交,停止!你处于一个分离的HEAD状态,这意味着它只用于提交检查。您可以使用git checkout master返回到master,甚至可以使用git checkout -

z0qdvdin

z0qdvdin3#

请参阅git reflog show消息。它帮助我恢复旧的本地更改。

相关问题