最近公司舊的git出點問題,需要把原來Git服務器的數據遷移到新服務器.這裏對遷移過程做個簡單的記錄。
1. 備份原GIT服務器的數據
gitlab-rake gitlab:backup:create RAILS_ENV=production
備份後的文件一般是位於/var/opt/gitlab/backups下, 文件名如1481886762_gitlab_backup.tar
2. 新服務器上安裝與原服務器一樣版本的Gitlab
這裏說明下爲什麼要一樣,原因應該是由於Gitlab自身的兼容性問題,高版本的Gitlab無法恢復低版本備份的數據
3. 將步驟1生成的tar文件拷貝到新服務器上相應的backups目錄下
scp username@src_ip:/var/opt/gitlab/backups/1461165090_gitlab_backup.tar /var/opt/gitlab/backups
4. 新服務器恢復數據
gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1461165090
BACKUP的時間點必須與原服務器備份後的文件名一致
恢復完成如下: