社内でGitLabのサーバが新旧2台たっており最近では新サーバのみメンテナンスされている状態でしたのでリポジトリを移行しました。
その時の作業手順となります。
GitLabバージョン
旧サーバ : GitLab 6.2.4
新サーバ : GitLab 9.2.2
作業内容
- 予め移行先のリポジトリを作成しておく。
- 下記のコマンドでリポジトリを移行する。
旧サーバのリポジトリをmirrorオプションを指定してクローン
$ git clone --mirror git@[旧サーバホスト名]:[ポート番号]/[移行対象リポジトリ名].git
クローンしたディレクトリに移動
$ cd [旧サーバリポジトリ名].git
リモートリポジトリの指定を削除
# ※これをしておかないと git remote add で fatal: remote origin already exists. となる
$ git remote rm origin
リモートリポジトリに移行先のリポジトリを追加
$ git remote add origin ssh://git@[新サーバホスト名]:[ポート番号]/[移行先リポジトリ名].git
$ git remote -v
ブランチ、タグを移行先にプッシュ
$ git push -u origin --all
$ git push -u origin --tags