是否可以从来源/主机恢复对本地分支的提交?

时间:2019-03-30 00:31:59

标签: git github

我怀疑这不可能,但值得一试。我以前维护了一个由主分支和几个功能分支组成的本地存储库。 GitHub上的远程存储库跟踪了master分支,并定期使用git push来保持最新状态。

在灾难性的本地故障以及今天从GitHub上“恢复”到新机器上之后,我意识到在功能分支上大量的不完整开发工作似乎丢失了。

然后的问题是-是否有可能在GitHub存储库中提供对本地/主服务器之外的本地存储库的任何提交,如果有的话,什么命令将检索这些提交?

2 个答案:

答案 0 :(得分:1)

自从您澄清了最初的问题:

  

在GitHub存储库中,只有master分支。我现在假设可能需要在GitHub上创建远程分支来跟踪我的本地功能分支,但是我从来没有这样做

然后,如果功能分支(我是说除您说过 master之外)都没有从未被推送到远程,则它们会进行任何提交还未合并master的情况,是的,很遗憾丢失了。

您最大的希望是将master的历史记录中至少保留您所需的部分内容,并根据需要进行重建。

答案 1 :(得分:1)

我想补充一点,如果您仍然具有分支所在的本地克隆,那么根据您的判断,我不太确定。

  

发生灾难性的本地故障之后,今天从GitHub“恢复”到新机器上

您可以使用reflog(这是HEAD头寸的日志)。 如果您签出这些分支是最近的事,您将在这里看到它们的提交。