From: Sam S. <sd...@gn...> - 2017-02-23 14:49:51
|
Hi Bruno, > * Bruno Haible <oe...@py...> [2017-02-23 01:03:18 +0100]: > >> ChangeLog is obsolete. Even Emacs does not use it anymore. > Different groups of developers make different choices. Emacs is by far the oldest / most conservative project still active. (I think) > The not so obvious benefits are: > > - We can really keep track of the history over long periods of time. > Whereas when we rely on a VCS, we lose info at each move to a different > location. Nope. We never lost history, and, barring a global cataclysm, never will. > (Like the gmane.org article URLs became obsolete six months ago.) Yes, I have code in clisp/emacs/misc.el to resolve this. > In the recent move of libffcall from cvs to git we did not lose info, > but it cost me two days of work to achieve this result. This is a rare event. The CLISP move from CVS to HG was not free either, but it was lossless too. > - You get educated to review your changes before committing them. I don't know what you mean here. > - You can access a ChangeLog without any tools, just with a text editor. You still need a computer. :-) I have never been in a situation when this was more useful than VC logs - which are directly linked to diffs. >> for me the main drawback is that it >> dramatically increases the probability of conflicts. > > 1) There is a tool for automatically resolving these conflicts: > http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/git-merge-changelog.c > You find the installation instructions at lines 42..48, 77..88 of this file. This is a crutch to keep using a 40yo VC simultaneously with a modern one. > 2) Even without it, yes there would be conflicts, but they are easy to > resolve, since you remember what you have added. Conflicts are only > difficult to resolve if you don't remember what were your changes > versus what were the other person's changes. It's not about difficulty. It's about inconvenience. You are underestimating its importance. (see the recent discussion about *.d format for relevant insights) >> If I make a local commit and do not push it right away, it is almost >> certain that I will have to go through either merge or strip/recommit >> because rebase will definitely fail. > > It is not the intent of ChangeLog that you feel the need to push > immediately. Just keep the same patience as before. Intent ("normative") has nothing to do with reality ("positive"). > In all projects I work in (from gnulib to libffcall), I find ChangeLogs useful. > In projects without ChangeLog (e.g. XFree86), I found it hard to work. Okay, you want it, you got it. Let us not repeat the memorable discussion we had 20 years ago about 1s0+1d0 - should it be 1d0(me and the rest of the known universe) or 1s0(you). ;-) -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504 http://steingoldpsychology.com http://www.childpsy.net http://www.dhimmitude.org https://jihadwatch.org http://iris.org.il http://no2bds.org (lisp programmers do it better) |