1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Git】図を使って簡単解説!リモートリポジトリの移行方法

Last updated at Posted at 2024-11-13

はじめに

数ある記事の中で本記事まで足を運んでいただき本当にありがとうございます。

この記事では、リモートリポジトリを新しいリポジトリに移行する手順をご紹介します。
併せてコミット履歴・タグ・ブランチの全てを移行します。

今回検証を行ったのは、Bitbucket→GitHubの移行になります。

※GitHubへの移行ではGitHubのインポート機能を使う方法もございますが、本記事ではgitコマンドを使用する方法をご紹介いたします。

全体像のイメージ

手順

1. 新しいリモートリポジトリを作成

GitHub上に新リポジトリ(空のリポジトリ)を作成します。

2. リポジトリをローカルにミラーでクローンする

作業ディレクトリ(ミラーリポジトリ)を作成します。
そしてディレクトリ内に移動します。

ミラーリポジトリとは
「ワーキングディレクトリが存在しない」リポジトリのこと。
実際のソースコードがなく、更新履歴・ブランチ・タグなどといったGitの情報のみを保持しているリポジトリのことです。

mkdir [ミラーリポジトリ名]
cd [ミラーリポジトリ名]

gitの情報をmirrorオプションを使用してクローンします。

mirrorオプションとは
リポジトリのすべてのリファレンス(更新履歴・ブランチ・タグ等)をそのまま保持し、完全なコピーを作成します。

git clone --mirror 現リポジトリURL ./

3. 新リポジトリにPush

gitの情報をmirrorオプションを使用して新リポジトリ(空のリポジトリ)に反映します。

git push --mirror 新リポジトリURL

4.リモートURLを新リポジトリに変更する

ローカルの作業リポジトリのリモートリポジトリのURLを確認します。

git remote -v

追跡ブランチ先とpush先を新リポジトリへ変更します。

git remote set-url --push origin 新リポジトリURL (push先だけ変更できる)
git remote set-url origin 新リポジトリURL(追跡ブランチ先とpush先の両方変更可能)

最後に

リモートリポジトリの移行・複製を検討されている方の参考になると幸いです。

参考URL

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?