Git初めてのGit

Day 0バージョン管理とは — 壊しても戻せる安心

GitとGitHubの違い

Gitは手元(ローカル)で履歴を管理する道具、GitHubはそれをネット上(リモート)に置いて保存・共有する場所。名前は似ているが役割は別。

名前は似ているが、別のもの

「Git」と「GitHub」。名前がそっくりなので、初心者はほぼ必ず混同します。でも、この2つは役割がまったく違います。ここではっきり区別しておけば、これから先ずっと迷わずにすみます。

Git(ギット)

自分のパソコンの中で動く道具/手元(ローカル)で変更の歴史を管理する/セーブポイントを作るのはGitの仕事/ネットにつながっていなくても使える

GitHub(ギットハブ)

インターネット上のサービス(場所)/Gitの記録をネット(リモート)に置いておく/保存・共有・チーム作業の場所/他の人と一緒に作業できる

たとえるなら「カメラ」と「クラウド写真置き場」

Gitは、写真を撮るカメラのようなものです。手元で「今の状態」をパチッと記録します。GitHubは、その写真をネット上のアルバム(クラウド)にアップして、なくさないように保存し、家族や友人と共有する場所です。カメラ(Git)だけでも撮影はできますが、クラウド(GitHub)に上げておくと安心して共有できる、というイメージです。

なぜ分けて理解するの?

Gitは手元の道具、GitHubはネット上の置き場所。役割を分けて覚えておくと、「このコマンドは手元の話か、ネットに送る話か」がすっきり整理できます。混同したままだと、あとで操作がちんぷんかんぷんになります。

ターミナル
git commit -m "手元でセーブ(これはGitの仕事)"
git push origin main
commitは手元(Git)で記録、pushはネット(GitHub)へ送る。役割の違いが操作にも表れる

上のように、commit(コミット)は手元でセーブするGitの操作、push(プッシュ)は手元の記録をGitHubへ送りだす操作です。今は暗記しなくて大丈夫。「手元=Git、ネット=GitHub」という地図さえ持っていれば十分です。

よくある勘違い

「GitHubがないとGitは使えない」と思う人がいますが、逆です。Gitは自分のパソコンだけでも使えます。GitHubは、その記録をネットに置いて保存・共有するための、あくまで便利な追加の場所です。

  • Git=手元(ローカル)で歴史を管理する道具
  • GitHub=それをネット(リモート)に置いて保存・共有する場所
  • commitは手元の記録、pushはネットへ送る操作
  • 混同しやすいので「手元 vs ネット」で区別する

AIにはこう聞く

「GitとGitHubの違いを、身近なたとえで説明して。あと、初心者がよく混同するポイントも教えて」

読んでも腑に落ちない所は、AIに噛み砕いてもらいましょう。

理解度チェック

答えられれば、面接で説明できる状態に一歩近づきます。

Q1

GitとGitHubの違いの説明として正しいものはどれですか?

Q2

本文のたとえで、GitHubは何にたとえられていましたか?

Q3

GitとGitHubの違いを、混同しないように説明してください。

記述式です。まず自分の言葉で答えを考えてから、模範解答を開いて自己採点してください。