Gitでのバージョン管理の流れ
実際のGitでのバージョン管理の流れを説明していきます。
例えば、下図のようにa.html、b.html、c.htmlを作成して、変更分をリポジトリに保存する際には、
まずは、git add .というコマンドを叩いて、stagingエリアに変更分を追加します。
stagingエリアというのは、リポジトリに変更分を保存する前に、今回の変更分が正しいかチェックする場です。
stagingエリアにて、変更分が正しい場合は、git commitコマンドにて、変更分をリポジトリに保存します。
保存の形式に関してですが、スナップショットにて保存されます。
スナップショットとは、ファイルの状態を丸ごと保存することを指します。
下図の場合は、a.html、b.html、c.htmlの各ファイルがスナップショットとして保存されます。

次に、b.htmlを編集して、git add、git commitした場合は、b.htmlのみスナップショットが保存され、a.htmlとc.htmlはリポジトリに保存されているものを使い回す(リンクを貼って、参照している)ようになっています。

git commitした際には、以下の情報が保存されます。
ID
メッセージ(編集した意図)
日時
編集者
スナップショット
Last updated