From: Phil Hord Date: Fri, 22 Feb 2013 19:29:47 GMT Subject: Re: Is this a bug? Message-ID: In-Reply-To: On Tue, Feb 19, 2013 at 6:02 AM, Duy Nguyen wrote: > On Tue, Feb 19, 2013 at 4:47 PM, Erik Faye-Lund wrote: >> On Tue, Feb 19, 2013 at 10:32 AM, David Wade wrote: >>> Hi, >>> >>> I wrote a commit message beginning with a hash (#) character, like this: 'git commit -m "#ifdef ...." ' >>> >>> Everything went okay when committing, but then I tried 'git commit -amend' and without editing the commit message I was told I had an empty commit message. >>> >>> Is this a problem with my text editor (vim 7.2) or git itself? (git version 1.7.2.2 under RedHat 5.8) Or something I'm not supposed to do ;-) ? >> >> The problem is that when doing interactive editing of messages (like >> 'git commit --amend' does), git considers '#' as a comment-character. >> You can disable this by using the --cleanup=verbatim switch (or some >> other suiting cleanup-setting, see 'git help commit'). > > Nobody is always conscious about the leading # in commit message to do > that. I once edited a commit message and the auto-wrap feature put '#' > at the beginning of the line. I saved and went on without noticing one > line was lost until much later :( Perhaps we should change the comment > signature a bit to reduce accidents, like only recognize '#' lines as > comments after a special line like > > # this is not a comment > ### START OF COMMENT ### > # this is a comment Or maybe --amend should imply --cleanup=whitespace. -- Phil