在 Debian 上“迁移 GitLab 仓库”通常分为几种场景,我先按最常见需求给你讲,然后你再看自己是哪一种。
适用于:
sudo gitlab-rake gitlab:backup:create
备份文件在:
/var/opt/gitlab/backups/
同时备份配置文件:
sudo cp /etc/gitlab/gitlab.rb /backup/gitlab.rb
sudo cp /etc/gitlab/gitlab-secrets.json /backup/gitlab-secrets.json
sudo apt update
sudo apt install gitlab-ee # 或 gitlab-ce
把备份文件复制到新服务器:
scp /var/opt/gitlab/backups/xxx_gitlab_backup.tar root@new:/var/opt/gitlab/backups/
恢复:
sudo gitlab-ctl stop
sudo gitlab-rake gitlab:backup:restore BACKUP=xxx
sudo gitlab-ctl start
✅ 最简单、最完整(含仓库、用户、CI)
适用于:
git clone --mirror git@old-gitlab:group/project.git
cd project.git
git push --mirror git@new-gitlab:group/project.git
GitLab 有 导入/导出 功能:
如果是 Docker:
docker exec -it gitlab gitlab-rake gitlab:backup:create
然后迁移:
/var/opt/gitlab/etc/gitlab/var/log/gitlabgit gc --aggressive
我可以直接给你一套精准命令。