微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Git - 不能拉,试图强行,现在不知道我在哪里

如何解决Git - 不能拉,试图强行,现在不知道我在哪里

我会试着解释我做了什么。

我上次提交并推送到 github 至少是几周前。

我仍然定期提交。

最近,我尝试合并更改,但未能成功,因为我在 github 上手动更改了自述文件,需要先将其拉下来。

我试图拉,但打开了 VIM。

我试图输入一条提交消息,就像它在询问,但我不熟悉 VIM,我不确定我是否成功。

我遵循了一些说明,但我不记得到底发生了什么。我不认为它是成功的,因为我决定做的下一件事就是强行推动。

我在本地拥有我想要的一切,除了自述文件,所以我认为这没什么大不了的。

但是在这样做之后,我决定我应该尝试返回并先保存自述文件,呃!

我查找了如何返回上一个提交并遵循此处的第一个答案:

How to recover from a git push -force?

基本上是这个

# work on local master
git checkout master

# reset to the prevIoUs state of origin/master,as recorded by reflog
git reset --hard origin/master@{1}

# at this point verify that this is indeed the desired commit.
# (if necessary,use git reflog to find the right one,and
# git reset --hard to that one)

# finally,push the master branch (and only the master branch) to the server
git push -f origin master

现在看起来不是在我之前的本地提交,而是在几周前我推送到 GitHub 的最后一次提交。这可能吗?

谁能帮我解决这个问题? 在这一点上,我只想回到我之前的本地提交。

如果我把自述文件弄丢了也没什么大不了的。

这是我的 git reflog - 我想回到“修正错字”

enter image description here

解决方法

从您的 reflog 来看,您似乎只想这样做:

git reset 27f3f76

假设您不介意修改工作目录,您可能想要:

git reset --hard 27f3f76  # Caution: will modify working directory

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。