ブランチとリモートブランチの違いについて GitHub
ブランチとリモートブランチの違いについて
ローカルブランチ(例:main)
- 自分のローカルマシン上にあるブランチ
- 直接作業を行うことができる
- コミット、変更、マージなどの操作を自由に行える
- 他の人には見えない
リモートブランチ(例:origin/main)
- リモートリポジトリ(GitHubなど)上にあるブランチの参照
- origin/というプレフィックスが付いている
- 直接変更することはできない
- チーム全員が見ることができる
- ローカルの変更をpushすることで更新される
- pullやfetchすることで最新の状態を取得できる
実際の状況を見ると(※ハッシュ名は変えてます)↓

- main(123456ab):自分のローカルの作業ブランチ
- origin/main(123456ab):リモートリポジトリのmainブランチの参照
両方のコミットハッシュ(123456ab)が同じなので、ローカルとリモートが同期されている状態であることがわかります。
これらの関係を図で表すと
ローカル: [main] ←→ 作業できる
↕ (push/pull)
リモート: [origin/main] ←→ 参照のみ
リモートブランチは、チームでの共同作業やコードの共有、バックアップとして重要な役割を果たす。