首页 > 解决方案 > 从本地计算机恢复 git 最新提交

问题描述

我在本地计算机上创建了我的代码。

一旦我将代码推送到 git 服务器。

git add -A
git commit -m "test"
git push -u ...

在那之后,在同一个分支上我做了很多改变,而不是提交

git add -A
git commit -m "test"

提交成功,但我没有推送我做了

git checkout master

然后我意识到我没有推送代码,所以我做了

git checkout mybranch

我再次意识到我所做的结帐是来自 git 服务器,我没有看到我的代码,即使我确实提交了。

我知道提交保存在我的本地计算机上,但是我的最新更改消失了吗?

如何恢复我的最新更改?

提前谢谢你。

标签: gitgit-commit

解决方案


您应该能够git switch优于git checkout)您的分支并查看您的代码。

但如果不是,请检查git reflog并查找最近的提交 SHA:尝试git switch --detach <SHA>检查该提交,确保您的更改存在。

OP Eitan评论中报告成功,使用git log --pretty

我找到了日期+时间,然后结帐。

 git reflog --pretty=format:"%H %an %ad"

推荐阅读