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へ送りだす操作です。今は暗記しなくて大丈夫。「手元=Git、ネット=GitHub」という地図さえ持っていれば十分です。
よくある勘違い
「GitHubがないとGitは使えない」と思う人がいますが、逆です。Gitは自分のパソコンだけでも使えます。GitHubは、その記録をネットに置いて保存・共有するための、あくまで便利な追加の場所です。
- Git=手元(ローカル)で歴史を管理する道具
- GitHub=それをネット(リモート)に置いて保存・共有する場所
- commitは手元の記録、pushはネットへ送る操作
- 混同しやすいので「手元 vs ネット」で区別する
AIにはこう聞く
「GitとGitHubの違いを、身近なたとえで説明して。あと、初心者がよく混同するポイントも教えて」
読んでも腑に落ちない所は、AIに噛み砕いてもらいましょう。
理解度チェック
答えられれば、面接で説明できる状態に一歩近づきます。
GitとGitHubの違いの説明として正しいものはどれですか?
本文のたとえで、GitHubは何にたとえられていましたか?
GitとGitHubの違いを、混同しないように説明してください。
記述式です。まず自分の言葉で答えを考えてから、模範解答を開いて自己採点してください。