Gitのリモート操作をマスターしよう!push / pull / fetch の基本まとめ【Git】【GitHub】

  • LINEで送る
Gitのリモート操作をマスターしよう!push / pull / fetch の基本まとめ

 この記事では、Gitの基本操作の中でもチーム開発やGitHub連携で必須となる「push」「pull」「fetch」の違いと使い方をわかりやすく解説します。初心者でもつまずきがちなリモート操作を、実例と一緒にしっかりマスターしましょう。

GitとGitHubの関係:リモートリポジトリの役割

 Gitでは、作業を行うローカル環境のローカルリポジトリとは別に、GitHubなどに置かれた「リモートリポジトリ」が存在します。 チームでコードを共有・統合するには、ローカルとリモート間でのやりとりが必要です。 そのために使うのが pushpullfetch といったリモート操作コマンドです。

 中でも GitHubは、Gitのリモートリポジトリをホスティングする代表的なサービスです。 クラウド上にある Gitリポジトリを複数人で共有・管理でき、以下のようなメリットがあります:

  • 複数人でコードを共同編集できる
  • バージョン管理されたコードの履歴を誰でも確認できる
  • プルリクエストを通じたレビューや議論が可能
  • 自動テストやCI/CDとの連携ができる

 GitHubにpushした変更は、チーム全員がpullすることで取り込めます。このように、GitとGitHubはローカルとリモートをつなぎ、チーム開発の基盤を作る重要な組み合わせです。

▶︎ git push:ローカルの変更をリモートに送る

git push origin ブランチ名
  • ローカルでcommitした内容を、リモートリポジトリにアップロードします。
  • 例:git push origin main
  • チームに変更を共有したいときや、GitHubでPull Request※を出す前に行います。

💡 push 前に git pull して最新の状態を取り込むのがベストプラクティスです。
※Pull Request(プルリクエスト)とは、自分の変更をチームに提案し、レビュー・議論・マージを依頼する仕組みです。次の記事で詳しく解説します。

▶︎ git pull:リモートの変更をローカルに取り込む

git pull origin ブランチ名
  • リモートリポジトリの最新変更をダウンロードし、現在のブランチに自動でマージします。
  • 例:git pull origin main
  • 他のメンバーが加えた変更を自分の環境に反映させたいときに使います。

⚠️ マージされるので、競合(コンフリクト)が発生する可能性もあります。

▶︎ git fetch:リモートの変更を確認だけする

git fetch origin
  • リモートの最新情報を取得しますが、ローカルには自動でマージされません。
  • 手動で比較・確認してから mergerebase をしたいときに使います。
  • 例:git fetch origingit log origin/main で内容確認

💡 慎重に作業したいときは fetchdiffmerge の流れがおすすめです。

push / pull / fetch の違い早見表

 以下の表は、Gitのリモート操作における pushpullfetch の違いを比較したものです。どの操作がどの方向に影響を与えるのか、マージされるかどうか、どんな場面で使うのかを把握しておきましょう。

コマンド処理方向自動でマージ主な用途
git pushローカル → リモート×自分の変更をリモートに共有したいとき
git pullリモート → ローカル他人の変更を取り込みたいとき
git fetchリモート → ローカル×リモートの最新情報だけ取得したいとき

コマンドの流れを図で確認しよう

 以下の図は、Gitの各操作が「どの範囲に影響するか」を視覚的に示したものです。この図を使えば、「どのコマンドが、どのタイミングで、どこに影響するのか」が直感的に理解できるようになります。

 厳密にはoptionや指定するファイル、コミットID等で影響範囲が変わってきますが、まずはこの図を頭に入れておくだけで、コマンドが何に作用するのか迷わなくなるでしょう。

まとめ

  • push はローカルの変更を共有
  • pull は他人の変更を取り込みつつマージ
  • fetch は確認だけして安全に操作

リモート操作を正しく使い分ければ、GitHubを使ったチーム開発もスムーズに進みます。


目次

実務で使えるGit講座 ― 初心者から即戦力まで6ステップ TOP

第1部 Gitの導入と基礎知識

  1. Gitとは? なぜ必要か?
  2. Gitのインストールと初期設定
  3. 最初のGit操作:init / clone / status

第2部 基本操作とローカルでの履歴管理

  1. ファイルの変更を記録:add / commit
  2. 履歴の確認と変更の取り消し:log / diff / restore
  3. Gitの仕組みを理解する(ステージングエリアとは?)

第3部 ブランチとマージの基本

  1. ブランチの概念と作り方
  2. マージとコンフリクト解消
  3. Git Flow・開発ブランチ運用の基本

第4部 GitHubを使ったチーム開発

  1. リモート操作:push / pull / fetch
  2. GitHubとプルリクエストの流れ
  3. チーム運用でのルール作り

第5部 実務で差がつく応用操作

  1. 履歴の書き換え:rebase / amend / stash
  2. タグ・リリースとCI/CDの連携
  3. Gitトラブル対応集(reflog / resetハマり対策)

第6部 GitHub Copilotの活用術

  1. GitHub Copilotとは?できること・できないこと

最新の投稿

SNSでもご購読できます。

コメントを残す