BitbucketからGitHubにリポジトリを移管
Posted: | Tags: Git
BitbucketからGitHubにリポジトリを移管する方法を紹介する。コミット履歴もそのまま移行できる。
Bitbucketでアプリパスワードを生成(プライベートリポジトリの場合)
Bitbucketのプレイベートリポジトリを移管する場合、アプリパスワードを生成する必要がある。パブリックリポジトリの場合はこの手順は不要なので飛ばしてよい。
Bitbucketにログインした状態で、アプリパスワードを生成するページにアクセス。
- https://bitbucket.org/account/settings/app-passwords/
- または、右上の歯車マーク →
Personal Bitbucket settings→ 左サイドバーのアプリ パスワード
アプリ パスワードの作成をクリックすると、以下のようなページが表示される(2025/05/17時点)。

以下の手順でアプリパスワードを生成する。
詳細のLabelに適当な名前を入力- 便宜的に区別するためのものなので、任意の名前でよい
権限のリポジトリの読み取りにチェック作成ボタンをクリック- アプリパスワードが表示される
- 表示ウィンドウを閉じると再表示できないので注意
アプリパスワードは移管が終わったら削除して問題ない。
GitHubでリポジトリをインポート
GitHubにログインした状態で、リポジトリをインポートするページにアクセス。
- https://github.com/new/import
- または、右上の
+マーク →Import repository
以下のようなページが表示される(2025/05/17時点)。

以下の手順でリポジトリをインポートする。
- 情報を入力
Your source repository detailsThe URL for your source repository- 移管元のリポジトリのURL
https://bitbucket.org/ユーザー名/リポジトリ名
- 移管元のリポジトリのURL
- 重要: 移管元がプライベートリポジトリの場合は以下の欄も入力(パブリックリポジトリの場合は空欄でOK)
Your username for your source repository- Bitbucketのユーザー名
Your access token or password for your source repository- 上で作成したBitbucketのアプリパスワード
Your new repository detailsRepository name- GitHubで新しく作成するリポジトリの名前
PublicかPrivateかをチェックボックスで選択- 重要: デフォルトは
Publicにチェックされているのでプレイベートにしたい場合は要注意
- 重要: デフォルトは
Begin importボタンをクリック
インポートが完了したらメールで通知される。ブラウザの画面は閉じても問題ない。小規模なリポジトリでも数分かかったため、大規模な場合はさらに時間がかかるかもしれない。
ローカルリポジトリのリモートURLを変更
ローカルに該当のリポジトリがある場合は、リモートURLをBitbucketからGitHubに変更する。
以下、リモート名がoriginのURLを変更する例を紹介する。
例はSSH URL(git@github.com:USER/REPOSITORY.git)だが、HTTPS URL(https://github.com/USER/REPOSITORY.git)も指定可能。USERとREPOSITORYはユーザー名とリポジトリ名。
git remote -vで現在のリモートURLを確認する。
$ git remote -v
origin git@bitbucket.org:USER/REPOSITORY.git (fetch)
origin git@bitbucket.org:USER/REPOSITORY.git (push)
git remote set-urlで新しいURLを設定する。
$ git remote set-url origin git@github.com:USER/REPOSITORY.git
git remote -vで変更が反映されていることを確認する。
$ git remote -v
origin git@github.com:USER/REPOSITORY.git (fetch)
origin git@github.com:USER/REPOSITORY.git (push)