詳細なChangeLogエントリは、通常、誰が、いつ、どの機能が変更されたか、およびこの変更が行われた理由を示します。
そしてこれは、ソースコードツリー内のすべての個別の関数に対してです!
私が理解しているように、ChangeLogは、適切なVCSがなかった過去のものです。
したがって、従来のChangeLogは、次の場所からすべてを取得できるため、まったく必要ありません。
$svnlog。 $hglog。 $gitログ。 $bzrログ。
製品バージョン間の短い要約とユーザーのみを対象としたChangeLogの可能なニーズは1つだけです(たとえば、新しいバージョンが来ると、開発者はChangeLogが注目すべき/目に見える変更を説明するように準備します)。
または私は間違っていますか?
http://autotoolset.sourceforge.net/tutorial.html#SEC45から:
ChangeLogファイル:このファイルを使用して、自分に加えたすべての変更を記録します ソースコード。ソースコードが多くのサブディレクトリに分散している場合、 サブディレクトリの内容を考えるのに十分な理由があります 別のサブパッケージとして、別の「ChangeLog」を維持してください 各サブディレクトリのファイル。
古風で独断的に見えます。autotoolsおよび「GNUコーディング標準」に必要なChangeLog。
GNU Emacsソースには多くの巨大なChangeLogが含まれています(多くは多くの部分で分割されています):
$ find emacs-22.3 -name "ChangeLog *" | xargs cat | wc -c 13605747
Emacs bzrリポジトリから約1分間要約ログを取得し、それを検索する代わりに、個別のChangeLogを検索し、などの最新のツールを使用して、Emacs VC
またはTortoise SVN/HG
すぐに変更の差分を取得できます。
更新ChengeLogを使用する理由は、RCS/CVSサービス制御システムの愚かさから来ています。http://www.red-bean.com/cvs2cl/changelogs.htmlセクション「ChangeLogsとCVSログ」を確認してください。最新のVCSはすべて、CVSのこの記事で批判することを提供/許可しています。
また、VCS履歴をChangeLogスタイルに変換する多くのスクリプトがあります。したがって、すべてのChangeLogを拒否します。
バージョン間の機能/下位互換性などのユーザー指向の情報を提供する場合は、NEWSファイルを使用してください:http ://www.gnu.org/prep/standards/html_node/NEWS-File.html