1 Nov 2010 19:19
Geany-Plugins & ChangeLogs
Hi everybody, While importing a new plugin into Geany-Plugins' autotools build system, I noticed that having a ChangeLog is mandatory. Since I have some griefs against version-controlled ChangeLogs, I'll try to expose the problems, and some possible solutions. Note that this reflects my point of view, and maybe there is pro and cons I don't thought about, so take it as-is, and don't hesitate to prove I'm wrong :) So, what's the problem? ChangeLogs. They are not a problem by themselves, but I think they becomes a problem when under version control (Git, SVN, CVS, Mercurial, Darcs, Bazaar, whatever). We use VCS for years now, but we still have ChangeLogs. Aren't ChangeLogs a bit outdated? Are they still useful? Or are they simply a pain from the past? Before concluding they are, I'll show some arguments against them, and try to find some for them. 0. Preface 0.1. What are the ChangeLogs for? ChangeLogs were invented to maintain a list of changes that happened on something (especially a source code tree, but potentially anything). 0.2. What are VCS for? VCS were invented to manage an history of changes that happened on something. They provide logs, and many other useful features. This seems to overlap with use of ChangeLogs.(Continue reading)
I think that the thread to date has suggested most of the ways they
are used, to summarise:
1. The ChangeLog is for non-VCS situations like tarballs. So it
should match the VCS commit logs. Generating it automatically or not
depends on the process you use to generate the non-VCS situation. If
its generated manually (the current Geany process) then keeping it in
VCS is good since it maintains the connection between the two.
2. The VCS commit message is to document *why* the commit is made,
*what* is changed is recorded by the VCS (much better than we can).
Rules on what should be committed are project specific and usually
differ depending on if the commit is being made to the trunk, a branch
or the developers local private copy where he can commit "This is as
far as I got before I went to bed"
RSS Feed