はじめに
gitbucketで管理していたリポジトリをgithubに移行した手順の備忘録です。
移行方法
プライベートなリポジトリの移行だったため、私は以下の手順で移行しました。
- 移行先のgithub新規リポジトリを作成する
https://github.com/new - 移行元のgitbucketリポジトリを一度ローカルにクローンする
git clone --bare https://gitbucket.hogehoge/fugafuga.git
※--bare
オプションを使うことで完全コピーのリポジトリをクローン可能
※このとき認証情報を聞かれるので、gitbucketのユーザー名とパスワードを用意しておく - クローンしたローカルの場所に移動する
cd fugafuga.git
- 1で作成したgithubリポジトリに向けてプッシュする
git push --mirror https://github.com/hogehoge/fugafuga.git
※--mirror
オプションを使うことでミラーリポジトリをプッシュ可能
※このとき認証情報を聞かれるので、gitbucketのユーザー名とトークンを用意しておく(パスワードではないので注意)
※トークンは (https://github.com/settings/tokens) で作成する(今回のリポジトリの移行ではプライベートリポジトリの権限さえあれば良いので、適当にNoteと有効期間を設定してrepoにチェックをつけるだけでOK)
- 任意: githubリポジトリにデータ移行が出来たことを確認して、ローカルのリポジトリを削除する
まとめ
プライベートなリポジトリでも簡単に移行できました。
今回は移行元がプライベートリポジトリだったので一度クローンしてプッシュしましたが、
パブリックリポジトリであればリポジトリのインポート (https://github.com/new/import) を使ってみるのも良さそうですね。
参考: https://docs.github.com/ja/repositories/creating-and-managing-repositories/duplicating-a-repository