这个时候需要卸载掉当前服务器安装的gitlab版本,并下载备份时的gitlab版本并重新安装(清华的tuna项目有所有的gitlab版本备份,下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/)

这里需要根据当前的操作系统类型选择e16或者e17,(centos 64bit是e16,centos7是 e17。如果不清楚具体是什么执行uname -a就知道了)。

下载完对应版本的rpm包后直接安装并再次导入备份文件即可。


"gitlab undefined method `full_path'"

遇到这个问题是因为数据库里有一个未删除的仓库记录而备份文件中并不存在此仓库,这时候直接注释掉:/opt/gitlab/embedded/service/gitlab-rails/lib/backup/repository.rb文件的78行:

#project.ensure_storage_path_exists

然后执行:


gitlab-ctl reconfigure

gitlab-ctl restart

gitlab-rake gitlab:backup:restore BACKUP=XXXXXX

等待命令执行完成即可成功恢复数据了。