unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: "W. Trevor King" <wking@tremily.us>
To: Tomi Ollila <tomi.ollila@iki.fi>
Cc: notmuch@notmuchmail.org
Subject: Re: [PATCH v4] nmbug: Add an 'init' command
Date: Mon, 19 Jan 2015 08:55:35 -0800	[thread overview]
Message-ID: <20150119165535.GR4613@odin.tremily.us> (raw)
In-Reply-To: <m2oapvf6kv.fsf@guru.guru-group.fi>

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

On Mon, Jan 19, 2015 at 11:44:16AM +0200, Tomi Ollila wrote:
> $ python2.7 devel/nmbug/nmbug init
> Reinitialized existing Git repository in /home/too/.nmbug/
> e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
> user.name not defined
> [u'git', u'--git-dir', u'/home/too/.nmbug', u'commit', u'--allow-empty',
> u'-m', u'Start a new nmbug repository'] exited with 1
> zsh: exit 1     python2.7 devel/nmbug/nmbug init
> 
> This is due to my default /path/to/git-templates/pre-commit
> forbidding commits unless I've configured user.name & user.email for
> that particular repository....
> 
> I guess there is not much one can do to handle users' mystic global
> hooks -- I'll look (later) whether e.g. '--no-hooks' parameter could
> be given to nmbug from command line...
> 
> ... Ok, it was --no-verify and patching that to the command line
> worked -- git complained that "Your name and email address were
> configured automatically based on your username and hostname..."…

Hmm.  My initial feeling is that if your pre-commit hook doesn't want
you to commit, we should respect that.  Although I'm not sure how to
handle this case for folks like you that don't define a global
username or email address.  Possibilities:

* Drop the empty commit from ‘nmbug init’ and teach ‘nmbug log’,
  ‘status’, ‘commit’, etc. to handle the “we don't have any commits
  yet” case?  That gives you time between the init and first commit to
  go into the repository and setup your username and email address by
  hand.  This would be the most work, but gives us a more native
  solution (‘nmbug init’ maps more directly to ‘git init’).

* Adjust the syntax to:

    nmbug init -- {arguments passed through to ‘git commit’}

  so you could run:

    nmbug init -- --author 'A U Thor <author@example.com>'

  or:

    nmbug init -- --no-verify

  this works as long as the tweak you need is accessible from a ‘git
  commit’ argument (I guess --no-verify covers us there).

> … but commit succeeded :).

From the template pre-commit.sample:

  The hook should exit with non-zero status after issuing an
  appropriate message if it wants to stop the commit.

so you should check that your hook is doing that if you expect to
abort commits it doesn't like ;).

> I think it should be checked so that init on already-existing
> repository does not succeed.

Good point.  I've added:

  if _os.path.exists(NMBGIT):
      raise ValueError('NMBGIT path ({!r}) already exists'.format(NMBGIT))

for v5.

Cheers,
Trevor

-- 
This email may be signed or encrypted with GnuPG (http://www.gnupg.org).
For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

      reply	other threads:[~2015-01-19 17:05 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-19  0:40 [PATCH v4] nmbug: Add an 'init' command W. Trevor King
2015-01-19  9:44 ` Tomi Ollila
2015-01-19 16:55   ` W. Trevor King [this message]

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

  List information: https://notmuchmail.org/

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

  git send-email \
    --in-reply-to=20150119165535.GR4613@odin.tremily.us \
    --to=wking@tremily.us \
    --cc=notmuch@notmuchmail.org \
    --cc=tomi.ollila@iki.fi \
    /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.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

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 read-only IMAP folder(s) and NNTP newsgroup(s).