入門 なし 約8分

Git と GitHub の役割を知る

Git はローカルの変更履歴を管理するツール、GitHub はその履歴をネット上に共有する場所。両者の役割の違いと、変更履歴を残す意味を整理する。

VS Code で Java のファイルを保存して動かせるようになると、書き換える回数が増えます。「さっきまで動いていたのに、どこを変えたか分からなくなった」という場面は、学習中にもよく起きます。

この回では、ファイルの変更履歴を管理するツール「Git」と、その履歴をネット上に共有する場所「GitHub」の役割を整理します。インストールや操作はまだ扱いません。まず「なぜ必要か」と「何が違うか」をつかむのがゴールです。

Git がないと何が困るか

Java のコードを書いていて、動いていたプログラムが急にエラーになったとします。

  • どのファイルを変えたか、覚えていない
  • 変える前のコードが残っていない
  • 「元に戻す」を何度も押しても、保存前の状態には戻れない

こうなると、最初から書き直すしかありません。ファイルが1つならまだしも、複数のファイルを同時に変えていた場合は、どこが原因か見当もつかなくなります。

「コピーを取っておけばいいのでは?」と思うかもしれません。実際、Main_v2.java Main_backup.java のようにファイルを複製する方法もあります。ただ、ファイルが増えるとどれが最新か分からなくなり、結局混乱します。

Git は、この問題を仕組みで解決するツールです。

Git はローカルで動く変更記録ツール

Git は、自分のパソコン上でファイルの変更履歴を記録します。

できることは次の3つです。

  • 変更前と変更後の差分を見る — どの行を足した・消した・書き換えたかを確認できる
  • 変更を区切って記録する — 「ここまでの変更をひとまとまりにして保存」という操作ができる
  • 過去の状態に戻る — 記録した時点のコードをいつでも見返せる

この「ひとまとまりの記録」を コミット(commit) と呼びます。ゲームのセーブポイントに近い考え方です。コミットを積み重ねることで、いつ・何を・なぜ変えたかの履歴がファイルとは別に残ります。

Git は自分のパソコンだけで動きます。ネット接続は必要ありません。

GitHub はネット上の共有先

GitHub は、Git で記録した履歴をネット上に保存・公開できるサービスです。

Git だけだと、履歴は自分のパソコンの中にしかありません。パソコンが壊れたら履歴ごと消えます。GitHub に履歴を送っておけば、バックアップになります。

もう1つの役割は、他の人と共有できることです。就職活動では「GitHub にコードを載せている」こと自体が実績の見せ方になります。学習の記録をそのまま残せるので、ポートフォリオとしても使えます。

GitGitHub
動く場所自分のパソコンネット上(ブラウザでも見られる)
主な役割変更履歴の記録・差分の確認・過去への復元履歴の保存・公開・共有
ネット接続不要必要

Git で記録し、GitHub に送る。この2段階が基本の流れです。

おぼえておく言葉

次の2つだけおぼえれば十分です。

  • リポジトリ(repository) — Git が変更履歴を記録する場所。プロジェクトのフォルダに対して1つ作る。「リポジトリを作る=このフォルダの変更を Git で追跡する」という意味になる
  • コミット(commit) — 変更をひとまとまりとして記録すること。「1コミット=1つの区切り」と考える

「ブランチ」「プッシュ」「プル」といった言葉もありますが、使う回で説明します。

Git と GitHub の区別を言えるか確認する

次の2つを自分の言葉で言えれば、この回は十分です。

  • Git は自分のパソコンで変更履歴を記録する
  • GitHub はその履歴をネット上に置く共有先

次の回へ

Git と GitHub の役割が分かったら、次は VS Code 上で実際にコミットしてみます。練習用のファイルを作り、その差分を確認してコミットとして記録する操作を体験します。