当gitlab的数据库坏了,或者其他的组件坏了,修复教程。
一般企业的gitlab都承载着多个项目的源码和提交记录
如果gitlab的数据库 PostgreSQL 坏掉了,基本很难修复,那这是不是意味着源码丢失了呢。
本文章只针对 gitlab传统存储方式的修复。gitlab14.X 版本后使用的hash存储,并没有研究如何修复。
1.首先要确定的是 gitlab-data 文件夹是否丢失,如果保存源码的文件夹丢失,那么就不用继续看了。
2.如果是gitlab 单个组件异常可以尝试修复该组件
3.正文开始
1.首先保存一份gitlab-data 文件夹到本地,保证这些git库的备份
2.重装一分相同版本的gitlab,并进行默认配置,使得可以访问
3.如果是群组下的git仓库,先创建好相同名称的群组,这样服务器的gitlab-data/repositories文件夹中会出现一个群组名文件夹
4.将本地的群组内的 .git文件夹 *2 复制进去群组文件夹中(每个库有2个.git文件夹 )
5.创建同名项目,于是你会发现一切都回来了。
备注:当创建同名项目很有可能报错权限不足等问题。
使用chmod -R 777 gitlab-data/repositories 给该文件夹赋予权限。
希望大家遇到此类的问题不要慌,只要版本库还在,总有解决的办法