Re: Overlong lines with git-merge --log
On Fri, Nov 02, 2012 at 02:30:15AM +0100, Tim Janik wrote:
Show 9 quoted lines
> Using git-merge --log to merge commit messages that spawn multiple lines
> will produce overlong summary lines.
> That's because each summary line for a commit includes the entire commit
> message (all lines concatenated).
>
> According to git-fmt-merge-msg(1), --log should 'populate the log
> message with one-line descriptions' instead of using the entire commit
> messages.
> Which would make a lot of sense, it's just not working as advertised.
The "subject" or "first line" is not actually the first line; these days it is typically the "first paragraph". The reason is that git always expected commit messages to look like:
one line describing the change
more detailed explanation
that might go on for several lines
or even several paragraphs
However, as people imported commits from previous systems, they ended up with a lot of commit messages where the closest thing to a subject was split across several lines like:
here's a description of the commit that is probably overly long,
but that's how we did it back in CVS days
Taking just the first line of those often cuts off the useful part. It was deemed less bad to show the whole message as a subject rather than cut it off arbitrarily.
If you are developing with git and not splitting the subject out with a blank line, there are a lot of tools that are going to look ugly (e.g., format-patch will generate overly long subjects, "log --oneline" will be ugly, and browsers like "tig" and "gitk" may be overwhelmed).
-Peff