Subject: Re: [PATCH Cogito] Make use of external editor work like CVS

From: Marcel Holtmann <[email-masked]>
Date: Sun, 08 May 2005 23:19:11 +0200

Hi Petr,

> > @@ -122,10 +124,10 @@
> >  if tty -s; then
> >         if ! [ "$msgs" ] || [ "$forceeditor" ]; then
> >                 ${EDITOR:-vi} $LOGMSG2
> > -       fi
> > -       if ! [ "$msgs" ] && ! [ $LOGMSG2 -nt $LOGMSG ]; then
> > -               rm $LOGMSG $LOGMSG2
> > -               die 'Commit message not modified, commit aborted'
> > +               if ! [ $LOGMSG2 -nt $LOGMSG ]; then
> > +                       rm $LOGMSG $LOGMSG2
> > +                       die 'Commit message not modified, commit aborted'
> > +               fi
> >         fi
> >  else
> > 
> > If you provide a commit message via -m and then close the editor without
> > changing it, it will commit the message. I think that will not be the
> > intention of the user.
> 
> Now, this is a pretty difficult question. The only other place in the
> Cogito toolkit which uses cg-commit -e is now cg-init when doing the
> initial commit - and you definitively want to commit even if the message
> was not modified in that case. Also, what if you want to just review
> how the -m stuff flows like before committing?
> 
> OTOH, we might want to stay consistent in behaviour and always abandon
> action when the file was not modified (except for the initial commit).
> Perhaps some -E for that? Other thoughts?

I think using -E to commit even when you don't modify the commit message
is a good idea. The alternative way is to ask the user like CVS does.

> > /*
> >  * Remove empty lines from the beginning and end.
> >  *
> >  * Turn multiple consecutive empty lines into just one
> >  * empty line.
> >  */
> 
> Bah, that's even easier when you want to squeeze the empty lines inside
> of the commit message. I don't, though.

You can do that with "cat -s", I know. But then you still have to look
at the first and the last line and delete it if they are empty.

I think it is a good idea to squeeze empty lines, because multi empty
lines are not useful for commit messages anyway. What do you think?

Regards

Marcel