git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pierre Habouzit <madcoder@debian.org>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: git@vger.kernel.org, krh@redhat.com, gitster@pobox.com
Subject: Re: [PATCH 5/6] builtin-commit: resurrect behavior for multiple -m   options
Date: Sun, 11 Nov 2007 23:11:34 +0100	[thread overview]
Message-ID: <20071111221134.GD13200@artemis.corp> (raw)
In-Reply-To: <Pine.LNX.4.64.0711112039130.4362@racer.site>

[-- Attachment #1: Type: text/plain, Size: 3190 bytes --]

On Sun, Nov 11, 2007 at 08:42:48PM +0000, Johannes Schindelin wrote:
> Hi,
> 
> On Sun, 11 Nov 2007, Pierre Habouzit wrote:
> 
> > On Sun, Nov 11, 2007 at 05:36:39PM +0000, Johannes Schindelin wrote:
> > > 
> > > When more than one -m option is given, the message does not replace
> > > the previous, but is appended.
> > > 
> > > Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> > > ---
> > >  builtin-commit.c |   26 ++++++++++++++++++++------
> > >  1 files changed, 20 insertions(+), 6 deletions(-)
> > > 
> > > diff --git a/builtin-commit.c b/builtin-commit.c
> > > index 66d7e5e..069d180 100644
> > > --- a/builtin-commit.c
> > > +++ b/builtin-commit.c
> > > @@ -30,13 +30,27 @@ static char *use_message_buffer;
> > >  static const char commit_editmsg[] = "COMMIT_EDITMSG";
> > >  static struct lock_file lock_file;
> > >  
> > > -static char *logfile, *force_author, *message, *template_file;
> > > +static char *logfile, *force_author, *template_file;
> > >  static char *edit_message, *use_message;
> > >  static int all, edit_flag, also, interactive, only, amend, signoff;
> > >  static int quiet, verbose, untracked_files, no_verify;
> > >  
> > >  static int no_edit, initial_commit, in_merge;
> > >  const char *only_include_assumed;
> > > +struct strbuf message;
> > 
> >   Unless I'm mistaken `static` keywords are missign for`message` and
> > `only_include_assumed`.
> 
> Oh yeah.  Will fix.
> 
> >   And you _have_ to initialize message with STRBUF_INIT (remember of the
> > slop).
> 
> Not in this case, since I do not use message.buf as long as message.len == 
> 0.  But I agree it would be cleaner to just use STRBUF_INIT.

  I know that you don't use it, but who knows where this code will be
headed in its future right ? :) It's just good practice.

> > > +static int opt_parse_m(const struct option *opt, const char *arg, int unset)
> > > +{
> > > +	struct strbuf *buf = opt->value;
> > > +	if (unset)
> > > +		strbuf_setlen(buf, 0);
> > > +	else {
> > > +		strbuf_addstr(buf, arg);
> > > +		strbuf_addch(buf, '\n');
> > > +		strbuf_addch(buf, '\n');
> > > +	}
> > > +	return 0;
> > > +}
> > 
> >   I believe such a callback could live in parse-options.[hc]. The need
> > to aggregate all string arguments into a strbuf looks generic enough to
> > me. Why are you adding two '\n' btw ? Isn't one enough ?
> 
> Well, this empty line is needed to stay backwards compatible.  It was 
> added to pass the test that Junio added to 'next'.  As such, this function 
> is not really generic enough, right?

  Well, you can make it generic enough using the defval to point to a
delimiter to use between lines :) But it's probably an overkill, and yes
if the "\n\n" is to be kept, then it's not generic "enough".

> Well, I meant to mention it in the cover letter.  My preference is to do 
> away with the extra empty line.  But this might break existing setups 
> depending on that behaviour.

  Right.

-- 
·O·  Pierre Habouzit
··O                                                madcoder@debian.org
OOO                                                http://www.madism.org

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2007-11-11 22:11 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-11 17:35 [PATCH 0/6] Various (replacement) patches to builtin-commit Johannes Schindelin
2007-11-11 17:35 ` [PATCH 1/6] builtin-commit: fix author date with --amend --author=<author> Johannes Schindelin
2007-11-12 19:38   ` Kristian Høgsberg
2007-11-12 20:12     ` Johannes Schindelin
2007-11-13  0:37     ` Junio C Hamano
2007-11-11 17:35 ` [PATCH 2/6] git status: show relative paths when run in a subdirectory Johannes Schindelin
2007-11-11 17:35 ` [PATCH 3/6] builtin-commit: fix --signoff Johannes Schindelin
2007-11-11 17:36 ` [PATCH 4/6] builtin-commit --s: add a newline if the last line was no S-O-B Johannes Schindelin
2007-11-11 17:36 ` [PATCH 5/6] builtin-commit: resurrect behavior for multiple -m options Johannes Schindelin
2007-11-11 19:42   ` Pierre Habouzit
2007-11-11 20:42     ` Johannes Schindelin
2007-11-11 22:11       ` Pierre Habouzit [this message]
2007-11-11 22:13       ` Pierre Habouzit
2007-11-11 17:36 ` [PATCH 6/6] builtin-commit: Add newline when showing which commit was created Johannes Schindelin
2007-12-01 22:21   ` Jeff King
2007-12-01 22:41     ` Johannes Schindelin
2007-12-02  5:40       ` Jeff King
2007-12-02 12:13         ` Johannes Schindelin
2007-12-02 16:54           ` Jeff King
2007-12-02 17:18             ` Johannes Schindelin
2007-12-02 18:34               ` Junio C Hamano
2007-12-02 21:20                 ` Johannes Schindelin
2007-12-03  7:33     ` Junio C Hamano
2007-12-03  7:53       ` Jeff King

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071111221134.GD13200@artemis.corp \
    --to=madcoder@debian.org \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=krh@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).