From: Jonathan Nieder <jrnieder@gmail.com>
To: Goswin von Brederlow <goswin-v-b@web.de>
Cc: Nicolas Pitre <nico@fluxnic.net>,
Wincent Colaiuta <win@wincent.com>,
578764@bugs.debian.org, git@vger.kernel.org
Subject: Re: Please default to 'commit -a' when no changes were added
Date: Sat, 24 Apr 2010 16:40:25 -0500 [thread overview]
Message-ID: <20100424214024.GA8044@progeny.tock> (raw)
In-Reply-To: <8739yktuvs.fsf@frosties.localdomain>
Hi again,
Goswin von Brederlow wrote:
> so far two people have suggested an alias
> for this and both have completly failed to achived the desired result.
I had thought Adam already suggested using ‘git diff-index --cached
--quiet HEAD’ [1].
You can do so like this:
cat <<-EOF >$HOME/bin/git-ci
#!/bin/sh
cleanindex() { git diff-index --cached --quiet HEAD; }
if test "$1" != "-h"
then
echo >&2 usage: git ci &&
exit 129
fi
if test "$#" != 0
then
echo >&2 Please use git commit directly.
if cleanindex
then
echo >&2 '(no staged changes)'
else
git diff --cached --name-status
fi
exit 129
fi
if cleanindex
then
exec git commit -a
else
exec git commit
fi
EOF
chmod +x $HOME/bin/git-ci
But dense as I am, I still can’t imagine why
echo '[alias] ci = commit -a' >>$HOME/.gitconfig
wouldn’t be better in every way (especially if Jakub’s
commit.preserveindex is enabled).
> If you know of a test to check if an index exists or not, preferably one
> that does consider new files being added or files being removed as
> "index exists", then please do speak up.
test -e .git/index
I know, not what you meant. But the condition you are looking for is
“staged content does not match the last commit”, not “the tool has
suddenly entered a different mode”.
Hope that helps,
Jonathan
[1] Well, he did:
http://thread.gmane.org/gmane.linux.debian.devel.bugs.general/698001/focus=145581
next prev parent reply other threads:[~2010-04-24 21:39 UTC|newest]
Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20100422151037.2310.2429.reportbug@frosties.localdomain>
2010-04-22 15:58 ` Please default to 'commit -a' when no changes were added Jonathan Nieder
2010-04-22 18:37 ` Goswin von Brederlow
2010-04-22 19:03 ` Nicolas Pitre
2010-04-22 19:08 ` Sverre Rabbelier
2010-04-22 20:37 ` Goswin von Brederlow
2010-04-22 21:25 ` Nicolas Pitre
2010-04-23 9:03 ` Goswin von Brederlow
2010-04-23 9:31 ` Miles Bader
2010-04-23 16:01 ` Wincent Colaiuta
2010-04-23 20:17 ` Goswin von Brederlow
2010-04-23 20:26 ` Michael Witten
2010-04-23 20:33 ` Daniel Grace
2010-04-23 21:01 ` Nicolas Pitre
2010-04-24 21:15 ` Goswin von Brederlow
2010-04-24 21:40 ` Jonathan Nieder [this message]
2010-04-24 22:08 ` Goswin von Brederlow
2010-04-24 22:42 ` Jonathan Nieder
2010-04-25 2:47 ` Miles Bader
2010-04-25 3:33 ` Jonathan Nieder
2010-04-23 22:35 ` Matthias Andree
2010-04-24 1:43 ` Junio C Hamano
2010-04-22 21:28 ` Junio C Hamano
2010-04-22 21:40 ` Matthieu Moy
2010-04-22 21:57 ` Michael Witten
2010-04-23 9:09 ` Goswin von Brederlow
2010-04-23 9:22 ` Tomas Carnecky
2010-04-23 17:00 ` Michael Witten
2010-04-23 9:27 ` Matthieu Moy
2010-04-23 9:35 ` Tor Arntsen
2010-04-22 21:48 ` Adam Brewster
2010-04-22 22:27 ` Jonathan Nieder
2010-04-23 9:15 ` Goswin von Brederlow
2010-04-23 10:39 ` The index (Re: Please default to 'commit -a' when no changes were added) Jonathan Nieder
2010-04-22 22:38 ` Please default to 'commit -a' when no changes were added Jon Seymour
2010-04-23 0:04 ` Adam Brewster
2010-04-23 9:25 ` Goswin von Brederlow
2010-04-23 9:14 ` Goswin von Brederlow
2010-04-23 9:39 ` Björn Steinbrink
2010-04-23 11:44 ` Sergei Organov
2010-04-23 11:57 ` Sverre Rabbelier
2010-04-23 12:20 ` Sergei Organov
2010-04-23 14:23 ` Goswin von Brederlow
2010-04-23 18:59 ` Matthias Andree
2010-04-23 19:34 ` Michael Witten
2010-04-23 22:18 ` Matthias Andree
2010-04-23 22:25 ` Eric Raymond
2010-04-23 23:38 ` Michael Witten
2010-04-24 4:38 ` Eric Raymond
2010-04-24 9:05 ` Michael Witten
2010-04-24 9:09 ` Eric Raymond
2010-04-23 23:26 ` Michael Witten
2010-04-24 13:26 ` Tor Arntsen
2010-04-24 9:40 ` 'commit -a' safety (was: Re: Please default to 'commit -a' when no changes were added) Jakub Narebski
2010-04-24 9:56 ` 'commit -a' safety Miles Bader
2010-04-24 10:05 ` Andreas Schwab
2010-04-24 10:26 ` Jakub Narebski
2010-04-24 13:29 ` Miles Bader
2010-04-24 18:23 ` Nicolas Pitre
2010-04-25 0:16 ` Jakub Narebski
2010-04-25 2:43 ` Miles Bader
2010-04-24 11:10 ` 'commit -a' safety (was: Re: Please default to 'commit -a' when no changes were added) Wincent Colaiuta
2010-04-24 11:48 ` 'commit -a' safety Jakub Narebski
2010-04-24 14:28 ` Joey Hess
2010-04-24 15:11 ` Mike Hommey
2010-04-24 16:42 ` 'commit -a' safety (was: Re: Please default to 'commit -a' when no changes were added) Petr Baudis
2010-04-24 16:59 ` Bug#578764: " Wincent Colaiuta
2010-04-24 17:47 ` Petr Baudis
2010-04-24 18:35 ` Nicolas Pitre
2010-04-24 18:54 ` Petr Baudis
2010-04-24 19:09 ` Nicolas Pitre
2010-04-24 19:35 ` Jacob Helwig
2010-04-24 19:44 ` Nicolas Pitre
2010-04-24 19:57 ` Jacob Helwig
2010-04-24 23:47 ` 'commit -a' safety Jakub Narebski
2010-04-25 1:13 ` Junio C Hamano
2010-04-25 8:01 ` Jakub Narebski
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=20100424214024.GA8044@progeny.tock \
--to=jrnieder@gmail.com \
--cc=578764@bugs.debian.org \
--cc=git@vger.kernel.org \
--cc=goswin-v-b@web.de \
--cc=nico@fluxnic.net \
--cc=win@wincent.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.