一些实习生昨天对主人施压。在我们完成责骂后,我们查看了结果。幸运的是,我们在一台机器上有一个几乎是最新版本的主机,只有一些拉动请求必须再次合并。
但有一件事让我烦恼:我们发现在最后一次合并拉取请求中引用了旧的HEAD提交(在github上),但由于没有分支或标记指向它,我们找不到任何方法来拉提交(git pull origin <SHA1>
不起作用)或设置远程分支到该提交。你有没有办法做到这一点?
答案 0 :(得分:2)
假设您的评论使用GitHub
。
您应该让GitHub
techsupport检查GitHub
项目的reflog。如果少于30天,您的reflog仍将包含您要查找的提交。如果你知道的话,就把哈希传递给他们吧。请他们将HEAD重置为此提交。
这些链接应该很有用:
http://sitaramc.github.com/concepts/reflog.html
P.S。如果他们给你一个如何自己动手的提示 - 请在这里作为答案发布。
已添加:这是关于此主题的绝佳链接:https://help.github.com/articles/commit-exists-on-github-but-not-in-my-local-clone
答案 1 :(得分:0)
如果您可以在GitHub上看到提交,例如在https://github.com/[org]/[repo]/commit/[sha],但它是孤儿,当您克隆/获取回购时,GitHub不会包含它。
如果您稍微更改了URL,https://github.com/[org]/[repo]/tree/[sha],您可以use the branch dropdown在该提交中创建分支: