最近公司新批了一台GIT服务器(Dell T130),需要把原来Git服务器的数据迁移到新服务器.这里对迁移过程做个简单的记录.

1. 备份原GIT服务器的数据

 gitlab-rake gitlab:backup:create RAILS_ENV=production

PS: 备份后的文件一般是位于/var/opt/gitlab/backups下, 文件名如1461165090_gitlab_backup.tar

2. 新服务器上安装与原服务器一样版本的Gitlab.

这里说明下为什么要一样,原因应该是由于Gitlab自身的兼容性问题,高版本的Gitlab无法恢复低版本备份的数据.

3. 将步骤1生成的tar文件拷贝到新服务器上相应的backups目录下

可以利用scp进行直接拷贝.

scp username@src_ip:/var/opt/gitlab/backups/1461165090_gitlab_backup.tar /var/opt/gitlab/backups

PS: username为原服务器的用户名,src_ip原服务器IP地址

4. 新服务器恢复数据

gitlab-rake gitlab:backup:restore RAILS_ENV=production   BACKUP=1461165090

PS:BACKUP的时间点必须与原服务器备份后的文件名一致