Re: ChangeLogs in commit messages

Gary Benson <[email protected]>
Newsgroups gmane.comp.gdb.devel
Message-ID <[email protected]>
Joel Brobecker wrote:
> >   1. With paths and with the date-and-author header:
> > 
> >     gdb/
> >     2014-07-30  Gary Benson  <[email protected]>
> > 
> >             * btrace.c: Include defs.h.
> >             * common/ptid.c: Include defs.h or server.h as appropriate.
> >             * nat/mips-linux-watch.c: Likewise.
> > 
> >   2. With date-and-author headers but no paths:
> > 
> >     2014-08-04  Tom Tromey  <[email protected]>
> >       
> >             * gdb.base/sss-bp-on-user-bp-2.exp: Match "to_resume", not
> >             "target_resume".
> > 
> >   3. With paths but no date-and-author headers:
> > 
> >     gdb/ChangeLog:
> >       
> >             * amd64-windows-tdep.c (amd64_windows_frame_decode_insns):
> >               Add debug trace.
> > 
> >   4. With no preamble at all:
> > 
> >             * chew.c (print_stack_level, main): Cast result of pointer
> >             difference to match format string.
> > 
> > What are people's preferences here?  My preference is #1, but I
> > could live with #3.  If we come to some kind of concensus on this
> > I'll update the wiki to reflect this.
> 
> #3, since date and author are often redundant with the commit's
> author. And even if not in the same, it's in the ChangeLog entry
> that should be checked in as part of the commit. Also, I feel like
> having those in the CL is an extra source of potential issue (eg:
> if forgot to update the date), and revision logs cannot be fixed
> once the commit has been pushed, whereas dates in ChangeLog entries
> can.

My concern with omitting the author-and-date is for commits with
multiple authors, and/or multiple commits that have been squashed
with git-rebase (which uses the date and author of the commit that
was "pick"ed rather than that of other commits that were "squash"ed
or "fixup"ed into it.  For example:

  commit 314c6a3559393741f22fdd9836f83d9f364fbd2a
  Author: Tom Tromey <[email protected]>
  Date:   Fri Jun 13 09:22:09 2014 -0600

      Make gdbserver CORE_ADDR unsigned
    
      gdbserver defines CORE_ADDR to be signed.  This seems erroneous to
      me; and furthermore likely to cause problems in common/, as it is
      different from gdb's definition.
    
      gdb/gdbserver/
      2014-07-24  Tom Tromey  <[email protected]>
                  Gary Benson  <[email protected]>
    
              * server.h (CORE_ADDR): Now unsigned.

This commit came from a half-finished branch Tom started back in
January.  I picked it up June or so, updated/tidied it a bit and
submitted it for review.  It was pushed on July 24 but the date on
the commit is June 13.  I think most people use rebase eventually,
so this kind of thing is pretty common.  The multiple authors
things is less common but not unique.

Thanks,
Gary

-- 
http://gbenson.net/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.