git pull origin mainのoriginって何?
まえがき
Gitを使っていると、よく目にするコマンドに
git pull origin main
がありますね。
このコマンドを見たとき、特に originって何?と疑問に思ったことはないでしょうか?
今回は、「originとは何か」を、Git初心者の方にも分かるように丁寧に解説していきます
「origin」とは?
一言でいうと、originはリモートリポジトリのニックネーム(別名)です。
リモートリポジトリというのは、インターネット上や社内サーバー上などに置かれている共有のGitリポジトリのことを指します。
ローカルリポジトリは、自分のPC内にあるGitリポジトリです。
Gitでは、リモートリポジトリに対して「どこにアクセスするのか」というURLが必要になります。
しかし、毎回長いURLを打つのは面倒ですし、間違えるリスクもあります。
そこでGitでは、URLにわかりやすい名前(ショートカット)をつけて管理できる仕組みがあります。
このデフォルトの名前が「origin」なのです。
例
たとえば、次のようなGitHubのリポジトリURLがあったとします。
https://github.com/example-user/example-repo.git
もしGitに名前を付けずに操作しようとすると、いちいちこの長いURLをコマンドに書く必要があります。
でも、Gitは自動的にこのURLに「origin」というニックネームをつけてくれているので、次のように短く書けるわけです。
git pull origin main
つまり、「origin」はこの長いURLの代わりに使われているのです。
複数のリモートリポジトリ
実は、ローカルリポジトリには複数のリモートリポジトリを登録することが可能です。
例えば、以下のように複数環境があったとして、
origin → GitHub上の公式リポジトリ
backup → 社内のバックアップ用サーバー
staging → ステージング用サーバー
git remote add backup https://backup-server.example.com/repo.git
git push backup main
このように、「origin」以外にも自由に名前を付けてリモートリポジトリを管理できるということです。
おわりに
Gitのコマンドに出てくる「origin」は、ただの略称だとご理解いただけたでしょうか?
今回の内容が分かっていないと意味不明なコマンドですが、意味がわかれば納得ですね。
株式会社ONE WEDGE
【Serverlessで世の中をもっと楽しく】 ONE WEDGEはServerlessシステム開発を中核技術としてWeb系システム開発、AWS/GCPを利用した業務システム・サービス開発、PWAを用いたモバイル開発、Alexaスキル開発など、元気と技術力を武器にお客様に真摯に向き合う価値創造企業です。
Discussion