今回は、Gitのgit remoteコマンドの使い方について解説します。
Gitを使っていると、下記のような場面がよくあるのではないでしょうか。
- リモートリポジトリのURLを確認したい
- originのURLを変更したい
- 新しいリモートを追加したい
こういうときに、git remoteコマンドが活躍します。
この記事では、よく使う操作に絞って、初心者でも分かるように解説しています。
git remoteとは?
git remoteとは、リモートリポジトリ(GitHubなど)を管理するコマンドです。
ローカルのGitと、外部のリポジトリを紐づける役割があります。
例えば
- GitHubのリポジトリ
- GitLabのリポジトリ
- Backlogのリポジトリ
などが「リモートリポジトリ」となります。
リモートリポジトリを確認する方法
まずは、現在設定されているリモートを確認する方法です。
一覧を表示する
引数なしで実行すると確認できます。
git remote
実行結果:
origin
originはデフォルトで設定されるリモート名です。
Gitで最初にリモートを登録すると、自動的にこの名前が使われることが多いです。
URLまで確認する(よく使う)
-vを引数としてつけると、実際の接続先URLを確認できます。
git remote -v
実行結果:
origin https://github.com/YasuakiHirano/codelike_web_docker.git (fetch)
origin https://github.com/YasuakiHirano/codelike_web_docker.git (push)
このようにfetchとpushのURLが確認できます。
fetchはリモートリポジトリから取得してくるときのURLで、pushはリモートリポジトリにアップロードするときのURLです。
基本的には同じ設定で使うことが多いですが、別々のURLを設定することも可能です。
リモートリポジトリを追加する方法
新しくリモートを追加する場合はこちらになります。
git remote add <名前> <URL>
例:
git remote add origin https://github.com/user/repo.git
通常は名前にoriginを使います。
originの箇所を別の名前で追加すると、新しい設定として独立して追加されます。
別のリモートリポジトリを追加する例
例えば、下記のようにhogeという名前でリポジトリを追加します。
git remote add hoge https://github.com/user/repo.git
リモートリポジトリの設定を確認すると、下記のように設定が2つになっていることが確認できます。
% git remote -v
hoge https://github.com/user/repo.git (fetch)
hoge https://github.com/user/repo.git (push)
origin https://github.com/YasuakiHirano/codelike_web_docker.git (fetch)
origin https://github.com/YasuakiHirano/codelike_web_docker.git (push)
設定したhogeリポジトリにソースコードをアップロードしたり、取得する時は
git push hoge mainやgit pull hoge mainとします。
リモートリポジトリのURLを変更する方法
リポジトリのURLを変更したい場合は、下記のように変更します。
git remote set-url <名前> <新しいURL>
例:
git remote set-url origin https://github.com/user/new-repo.git
リポジトリを移行するときや、アカウントの切り替えで、URLを設定しなおしたい時など
意外とよく使うことがあります。
リモートリポジトリを削除する方法
不要になったリモートを削除する場合は、removeとリポジトリ名を渡します。
git remote remove <名前>
例:下記では、hogeリポジトリの設定を削除しています。
git remote remove hoge
設定がいらなくなったときに使うことができます。
リモート名を変更する方法
設定しているリモートリポジトリの名前を変更することもできます。
git remote rename <旧名> <新名>
例:下記では、originをupstreamに変更しています。
git remote rename origin upstream
よくあるエラーと対処法
よくあるエラーと対処法です。
origin already exists の場合
すでに、リモートリポジトリが同じ名前で追加されている場合、下記のようにエラーになります。
fatal: remote origin already exists.
原因はすでにoriginが登録されているためです。
URLを変えたい場合は、下記のように、することで再設定可能です。
git remote set-url origin <URL>
もしくは削除してから再追加します。
git remote remove origin
git remote add origin <URL>
リモート設定が反映されない場合
うまくプッシュやプルができていない場合、リモート設定が反映されていない可能性があります。
コマンドで確認してみましょう。
git remote -v
反映されていない場合は、URLミスの可能性があるので、再設定や追加を行いましょう。
よく使うコマンドまとめ
| 操作 | コマンド |
|---|---|
| 一覧表示 | git remote |
| URL確認 | git remote -v |
| 追加 | git remote add |
| 変更 | git remote set-url |
| 削除 | git remote remove |
| 名前変更 | git remote rename |
まとめ
git remoteは、リモートリポジトリを管理するための重要なコマンドです。
特に覚えておきたいのはこの2つです。
git remote -v(確認)git remote set-url(変更)
このあたりを押さえておけば、実務でも困ることはないかと思います。
あまり変更することはないですが、個人的には何度か変更する必要が出て変えたことがあります。
「確認や変更も簡単にできるんだな」と頭の片隅に入れておきましょう。

コメント