GitLab CE:如何恢复或修复突然丢失的问题/合并请求的仓库?

问题描述

大约两年前,我开始在x86 Debian VM本地运行GitLab CE,去年,我决定将GitLab CE实例迁移到专用的Intel NUC服务器。一切似乎都顺利进行,并且我的GitLab CE实例到今天为止都是最新的(运行13.4.2)。

但是我最近发现,一些已移动的存储库给出了“无存储库”!在访问其项目页面时出现错误,并且如果他们有任何发行板,合并请求等,这些也都消失了。但是您不会怀疑,因为损坏的存储库与我一直使用的工作存储库一起出现在存储库列表中。

如果我不得不为这些损坏的存储库辩解,那可能是他们有一年多的最后活动,或者除了最初的推动之外没有对他们进行任何推动,或者如果进行了更改,则产生了问题,或合并创建的请求,实际上是一年多以前。

这些破碎的回购协议中有一些很大,有很多历史,而另一些则非常小(从字面上看只是跟踪对shell脚本的更改),所以我认为回购规模本身与它没有任何关系。 / p>

如果我运行GitLab诊断检查sudo gitlab-rake gitlab:check,则除了“哈希存储”外,其他一切看起来都不错:

All projects are in hashed storage? ... no
  Try fixing it:
  Please migrate all projects to hashed storage

但是随后运行sudo gitlab-rake gitlab:storage:migrate_to_hashed似乎没有完成(仪表盘中有六个失败的作业),再次运行“ gitlab:check”仍然表明此“哈希存储”问题。我也尝试过运行sudo gitlab-rake gitlab:git:fscksudo gitlab-rake cache:clear,但是这些命令似乎没有什么作用。

幸运的是,我的机器上拥有所有丢失的存储库的最新版本,实际上,我仍然具有运行GitLab CE 12.8.5的原始VM(存储库的副本有些过时了。)

所以我的问题是:

  1. 是否可以“修复”当前实例上损坏的存储库?我怀疑我可以将这些存储库的本地副本“重新推送”回我的服务器,但是我真的不想丢失任何元数据,例如问题/合并请求等。
  2. 有什么方法可以解决“并非所有项目都在哈希存储中”的问题? (再次执行migrate_to_hashed任务失败。)
  3. 我能够执行“备份”,“检查/调整备份”,“还原备份”之类的事情来修复损坏的存储库,或者至少修复元数据吗?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)