Git で既存のリモートリポジトリから別のリモートリポジトリにプッシュする

Azhar Bashir Khan 2022年6月7日
Git で既存のリモートリポジトリから別のリモートリポジトリにプッシュする

このチュートリアルでは、既存のリモートリポジトリから Git の別のリモートリポジトリにプッシュする方法を説明します。

Git は、プロジェクトディレクトリの変更を追跡するために使用されるバージョン制御システムです。Git はそのような目的でコミットを使用します。

Git では、リモートリポジトリとそのブランチを追跡するために、ローカルリポジトリとそのブランチが設定されます。

ローカルリポジトリで行われた変更を、既存のリモートリポジトリではなく別のリモートリポジトリにプッシュしたい場合があります。このような目的で git remote コマンドを使用できます。

これを例を挙げて説明します。

Git 内の既存のリモートリポジトリから別のリモートリポジトリにプッシュする

Git は、プロジェクトディレクトリ内のファイルに加えられた変更を追跡するために、共同開発環境で使用されます。Git には、多くの場合、リモート Git リポジトリとそのブランチを追跡するように設定されたローカルリポジトリとそのブランチがあります。

git pull コマンドを使用して Git リモートリポジトリからローカルリポジトリに変更をプルし、git push コマンドを使用して変更をリモートにプッシュします。

場合によっては、既存のリポジトリではなく、別のリモートリポジトリ、つまりリモート変更をプルするために使用するリポジトリに変更をプッシュしたい場合があります。

サーバーhttps://git.fedorahosted.org/でホストされている My_Project という名前のリポジトリがあるとします。Git リポジトリ My_Project をローカルマシンに複製する必要があります。

次に、git pull コマンドと git push コマンドをそれぞれ実行して、サーバーhttps://git.fedorahosted.org/でホストされている既存のリモートリポジトリとの間で変更をプルインおよびプッシュできます。

ここで、別のサーバーhttps://github.com/でホストされている別のリモート Git リポジトリに変更をプッシュしたいと思います。

まず、サーバーGithubMy_Project という名前の新しいリモート Git リポジトリを作成する必要があります。

ローカルマシンのサーバーhttps://git.fedorahosted.org/でホストされているリモートリポジトリ My_Project のクローンを作成しました。次に、エイリアス origin で指定されたリモートの名前を upstream に変更します。

$ git remote rename origin upstream

この後、次のようにコマンド git remote を使用して、Github でホストされている新しい別のリモートリポジトリ URL を追加する必要があります。

$ git remote add origin https://github.com/johndoe/My_Project.git

したがって、これで別のリモート Git リポジトリ URL を設定しました。これで、次のように、git push コマンドを使用して、ローカルの変更を Github でホストされているリモートリポジトリにプッシュできます。

$ git push origin master

git pull コマンドを使用して、サーバーhttps://git.fedorahosted.org/でホストされている元のリモートリポジトリと既存のリモートリポジトリから変更をプルすることができます。

$ git pull upstream master

したがって、既存のリモートリポジトリから Git の別のリモートリポジトリにプッシュする方法を学びました。

詳細については、次のソースをご覧ください。

  1. git-remote
  2. git syncing

関連記事 - Git Remote