使用git和GitHub时,如果存储库已损坏,是否可以使用GitHub中的干净版本返回?

时间:2019-05-07 12:46:59

标签: git github version-control

在使用git和GitHub时,如果存储库已损坏,如果我们在本地具有该存储库的先前完整备份,是否可以在GitHub中使用原始版本?

假设我们在本地,该文件夹为:/ home / toto/。

在/ home / toto /中,有工作目录和.git文件夹以及存储库。

该项目在GitHub上进行跟踪,例如在user / toto中。

在用户/ toto中,我们照常查找用户/ toto存储库的问题,提取请求,Wiki等。

现在,如果/ home / toto /已损坏,并且已被推送到GitHub,那么我们就有一个干净的/ home / toto /保存版本。我想我们可以像这样回去了:

  • 删除GitHub中的user / toto存储库。
  • 在GitHub中创建一个新的空用户/ toto。
  • 将未损坏的/ home / toto /推送到GitHub中的user / toto。

我做了一些测试,看起来工作正常。

但是!在这种情况下,我们丢失了所有问题,请求请求等......

是否可以从REST GitHub API或其他想法中保存所有这些元信息,然后再在GitHub中删除损坏的用户/ toto,然后再注入此元信息?

1 个答案:

答案 0 :(得分:4)

您还尝试过强制推送吗?尝试将此命令与您希望在github上拥有的干净工作副本一起使用。只需对损坏的一个或每个分支执行此操作:

git push --force

然后,所有存储库元数据都会保留,并且代码基本上会再次切换到备份的干净状态。

如果您已保护分支,请转至存储库设置并取消保护要覆盖的分支。然后再次尝试执行命令。

希望这会有所帮助。随时提出任何其他问题。我觉得这将是解决您问题的最简单方法。