GitLabでリポジトリ(ソースコード)を別アカウントのリポジトリに移行する

仕事用アカウントで個人的に作っていたプロジェクトを、個人用アカウントの方に移行したので、念のための備忘録。
(こんなの誰でもわかるやろって言われそうですが…)

※2020/05/06追記
この記事での移行は、あくまでコード部分のみの移行であることに注意です。

移行先リポジトリ #

作成 #

1.GitLabのメニューからProjectsYour Projectsでプロジェクト一覧へ

2.New Projectから新規プロジェクト作成

3.任意の名前、任意の設定でCreate Projectを選択

移行元リポジトリ #

ローカルのプロジェクトの設定変更 #

1.push先の変更
vi .git/configなどで、リポジトリのURLを移行先リポジトリのURLに変更する。

例

[core]
        repositoryformatversion = 0
        filemode = false
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = git@gitlab.com:XXXX/〇〇〇〇 ←このURLを変更
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master
[branch "develop"]
        remote = origin
        merge = refs/heads/develop

2.移行先リポジトリにpushする
git push origin (ブランチ名)でpushして、移行先リポジトリに反映させる。

リポジトリの削除 #

無事にpushが成功し、移行先リポジトリに反映されたら、不要になった移行元のリポジトリを削除する。

1.移行元リポジトリのトップ画面のサイドメニューからSettingGeneralを選択

2.一番下のAdvancedのなかの、Remove projectを選択

3.表示される警告モーダルのなかで、そのプロジェクト名を入力しconfirmを選択


自分がこの移行をした際は、使用するGitLabのアカウントも変えたりSSHキーを設定したりもしたので、もう少し手順が増えましたが慣れてしまえばそう難しくはなかったです。(はじめてやった時は時間かかってしまってましたが…苦笑)

しょっちゅう、こういった移行をすることはないですが一応覚えておきたいものです。