Git初めてのGit

Day 1基本の流れ — 記録する・履歴を読む

変更を記録する2ステップ — add と commit

git add と git commit の役割の違いを、カゴとレジのたとえで説明できる。

記録は2ステップでできている

Gitで変更を記録するには、2つのステップを踏みます。まず git add で「記録するものを選ぶ」、次に git commit で「選んだものをセーブする」。この2段階が最初はわかりにくいので、たとえで整理しましょう。

スーパーの買い物を想像してください。git add は、棚から商品を選んで『カゴに入れる』こと。git commit は、カゴの中身をまとめて『レジで会計する』ことです。カゴに入れただけではまだ買っていません。会計して初めて、正式な記録(レシート)が残ります。

ターミナル
git add index.html
git commit -m "トップページの見出しを追加"
add で選び、commit でメッセージをつけて記録する

この「カゴに入れる」段階のことをステージング(staging)と呼びます。全部いっぺんに記録するのではなく、関係のある変更だけをカゴに入れてから会計できるので、記録をきれいに分けられます。

ターミナル
git add .
git commit -m "メッセージ"
git add . は変更したファイルをまとめてカゴに入れる書き方

なぜ2ステップに分けるの?

「今回の記録に含めるもの」と「まだ含めないもの」を分けたいからです。たとえば3つ直したうち2つだけを1つの記録にしたいとき、add でその2つだけを選べます。commit を意味のあるかたまりに保てるのが利点です。

git add

記録するものを選ぶ/カゴに入れる段階(ステージング)/まだ履歴には残らない

git commit

選んだものをセーブする/レジで会計する段階/メッセージとともに履歴に残る

コミットメッセージの良い書き方

メッセージは「何をしたか」が後で読んでわかるように書きます。悪い例:「修正」。良い例:「ログイン画面のボタンの色を青に変更」。未来の自分や仲間が履歴を読んだとき、開かなくても内容がわかるのが理想です。

AIにはこう聞く

「git add と git commit の違いを、買い物のたとえで説明してください。あと、良いコミットメッセージの例と悪い例も3つずつ教えてください。」

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

理解度チェック

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

Q1

買い物のたとえで、git commit にあたるのはどれ?

Q2

ステージングとは何を指しますか?

Q3

git add と git commit の役割の違いを、たとえを使って説明してください。良いコミットメッセージの条件も一言添えてください。

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