【チェンジログ】
CHANGELOG とは?
最終更新:
💡 利用者に伝える、バージョンごとの変更記録
ソフトウェア等のバージョンごとの重要な変更を、人が読みやすく整理した記録。コミット履歴との違い、未公開の変更、互換性のない変更の案内を解説します。
📌 このページのポイント
- バージョンごとに、重要な変更を読みやすく整理する
- 機能追加・修正・削除など、利用者への影響を伝える
- コミット履歴をそのまま並べたものとは目的が違う
- 未公開の予定と、公開済みの変更を区別する
更新する前に、CHANGELOGを見るの?
そうだよ。何が追加され、何が修正・変更・削除されたかを知る手がかりになる。利用者や開発に参加する人が、バージョン間の重要な違いを読めるようにまとめた記録なんだ。
Gitのコミット一覧と同じ?
コミットは、開発中の変更を積み重ねた履歴だよ。細かな内部作業やマージもある。CHANGELOGでは、複数のコミットにまたがる変更も、利用者に伝わる単位でまとめる。すべての作業を載せることが目的ではないんだ。
書く順番や形式は、決まっている?
Keep a Changelogというガイドでは、新しい版を上に置き、版と日付を示して、追加・変更・非推奨・削除・修正・セキュリティを分ける方法を提案している。参考になる指針で、すべてのプロジェクトに義務付けられた規格ではないよ。
Unreleasedに書いてある機能は、もう使える?
自動作成すれば、もう確認はいらない?
Conventional Commitsのようなメッセージの規約は、変更を分類する自動化に役立つ。でも、利用者への影響や移行方法まで、作業名だけで十分伝わるとは限らない。下書きを見直し、互換性のない変更や必要な手順を分かりやすく補おう。
もっと詳しく知りたい人へ
リリースノートとは、必ず別の内容になる?
呼び分けや内容はプロジェクトによります。CHANGELOGは版ごとの変更を継続して記録し、リリースノートでは特定の公開版の案内を詳しくする場合があります。どちらも利用者が読むための情報です。
非推奨と削除は、同じ?
非推奨は、利用を控え代替への移行を勧める状態で、その時点ではまだ使えることがあります。削除は機能がなくなった変更です。対象の版、移行先や手順を区別して案内すると、更新する人が判断しやすくなります。
まとめ:ざっくりこれだけ覚えればOK!
「CHANGELOG」って出てきたら「バージョンごとの重要な変更を、読みやすくまとめた記録」と思えばだいたいOK!
📖 おまけ:英語の意味
「Change Log」 = 変更の記録
💬 CHANGELOG.mdというファイル名がよく使われますが、必須のファイル名や唯一の形式が決まっているわけではありません。