我有一些带有很多遥控器的 git repo,一些远程分支是独一无二的,我没有本地跟踪分支。
今天我在更改远程 url 时犯了错误(我使用 remote1 而不是 remote2)。
在git fetch --all
我的 remote1 被重写之后(我在提交 sha 之前看到 +)
这非常糟糕,因为我现在无法访问 remote1,而且我无法修改 url 并获取。
在这个错误的获取之后,是否可以从我的本地仓库恢复 remote1 分支?
Git 在 reflog 中记录引用发生的所有事情(如分支提示和远程分支提示),您必须深入其中才能找到远程的先前 SHA。
要搜索 git reflog,请输入git reflog
,然后搜索上次提到的 (refs/remotes/remote/branch)。它会给你一个SHA。
然后您可以通过运行恢复对此 SHA 的远程引用
git update-ref refs/remotes/remote1/branch
编辑您可以尝试使用Lost Last Git Commit查找悬空提交。