2016-10-13 133 views

回答

1

git reflog已经为我多次解救。

此参考日志记录对本地存储库/分支机构/参考的更新。

因此,如果您在此情况下直接在拉动之前找到所需分支的头部提交,则可以将当前分支重置为该引用。例如,要恢复到[email protected]{2}

git reset --hard [email protected]{2}

注意:在使用--hard

Git reflog documentation

+0

感谢之前绝对确保你的行动,我的分支是固定的!使用reflog查找最后一次良好提交,将分支重置为该引用,并用强制推送结束。 – Sarpe

0

运行git pull只是一个提取,然后合并上游分支。假设合并成功,你还有这个分支签出,这样的事情应该修复它:

$ git reset @^1 

这重置分支的第一个父这应该是衍合分支(第二父是的头老版本的上游的分支),你可以做复位前验证:

$ git log --graph @^1 

$ gitk @^1 

如果那些看起来神志清醒,然后复位应该做的我吨。它不会触摸工作树中的文件,因此您可以看到这是否会导致任何令人惊讶的变化。我怀疑是没有的,因为就代码而言,合并可能是无效的(再次假设它成功了)。

相关问题