Git の履歴を書き換える

Git の主な目的は、コミット済みの変更を失わずに記録していくことである。しかし Git には、開発ワークフローを整え、作り替えるための機能もある。これらの機能には、プロジェクト履歴を明示的に書き換える機能も含まれるが、そのためにコミット情報を失う可能性も生じる。Git は履歴を書き換えるコマンドを、プロジェクト内容を失う可能性についての警告とともに提供している。

この章では、コミット済みスナップショットを書き換える必要が生じる一般的な理由を説明し、それを実行するときにミスを防ぐ方法を示す。