Git Remote
最終更新
git remote は、リポジトリがリモートリポジトリに対して使う短縮名を管理します - 最も一般的なのは、GitHub のリポジトリを指す origin です。作業を始めるときにリモートを追加したり、持っているリモートを一覧表示したり、名前を変更・削除したり、リモートのURLを変更したり (たとえば HTTPS から SSH への切り替え) するために使います。
これらをターミナルプレイグラウンドで試してみましょう - ブラウザ上の本物のシェルで、インストール不要です。
構文
| Command | What it does |
|---|---|
git remote -v | リモートをそのURLとともに一覧表示する |
git remote add origin <url> | origin という名前のリモートを追加する |
git remote set-url origin <url> | リモートのURLを変更する |
git remote rename origin upstream | リモートの名前を変更する |
git remote remove origin | リモートを削除する |
git remote show origin | リモートの詳細を表示する |
よくあるケース
| Goal | Command |
|---|---|
| 新しいリポジトリを GitHub に接続する | git remote add origin <url> |
| HTTPS から SSH に切り替える | git remote set-url origin git@github.com:... |
| origin がどこを指しているか確認する | git remote -v |
実例
| 手順 | コマンド | 結果 |
|---|---|---|
| 1 | git remote add origin https://github.com/you/app.git | GitHub のリポジトリを origin という名前で登録する |
| 2 | git remote -v | origin を fetch と push の URL とともに一覧表示する |
| 3 | git push -u origin main | main をアップロードし、origin/main を追跡するよう設定する |
git remote に関するよくある質問
Git のリモート (remote) とは何ですか?
リモートとは、別の場所 - 通常は GitHub、GitLab、またはサーバー上 - にホストされたリポジトリへの名前付き参照です。デフォルトの名前は
origin です。リモートは git push、git pull、git fetch が同期する対象です。git remote は、それらの名前付き参照を管理するコマンドです。リモートを追加するにはどうすればよいですか?
リポジトリのURLを使って
git remote add origin <url> を実行します。これにより、ローカルリポジトリが origin という名前でリモートに紐付けられます。その後、git push -u origin main で push できます。origin がすでに使われている場合は、別の名前 (upstream など) を使ってください。リモートのURLを変更するにはどうすればよいですか?
git remote set-url origin <new-url> を使います。これは、リモートを削除して追加し直すことなく、リポジトリを HTTPS のURLから SSH のURLに切り替える (またはリポジトリ名の変更後に更新する) 方法です。git remote -v で確認してください。自分のリモートを確認するにはどうすればよいですか?
git remote -v を実行すると、各リモートを fetch 用と push 用のURLとともに一覧表示できます。特定のリモートの詳細な表示 - 追跡しているブランチを含む - には git remote show origin を使います。git remote add origin は何をするのですか?
リポジトリの設定に
origin という名前で URL を保存します。この時点では何もアップロードもダウンロードもされません。このコマンドは名前を作るだけで、以後は URL 全体の代わりに git push origin main と入力できるようになります。origin がすでにある場合、Git は "remote origin already exists" と表示して拒否します。別の場所を指すようにするには git remote set-url origin <url> を使います。origin と upstream の違いは何ですか?
どちらも慣習的な名前にすぎません。
origin はクローン元、または最初にプッシュした先のリモートで、たいていは自分のコピーです。プロジェクトをフォークしたときは、元のリポジトリを git remote add upstream <url> で upstream という2つ目のリモートとして追加することがよくあります。こうすると、自分のフォークにプッシュしながら元のリポジトリの変更を fetch できます。リモートからブランチを取得するにはどうすればよいですか?
git fetch origin を実行してすべてのブランチをダウンロードし、git switch <branch> で origin/<branch> を追跡するローカルブランチを作ります。いろいろなケースは リモートブランチをチェックアウトする のページで説明しています。これをオンラインで練習できますか?
はい。ターミナルプレイグラウンドを開けば、ブラウザ上の本物のシェルで
git remote を実行できます - インストール不要です。Coddy の無料のインタラクティブな Git コースでも、リモートへの接続を段階的に扱っています。