From: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
To: <dag@cray.com>
Cc: Antonio Ospite <ospite@studenti.unina.it>, <git@vger.kernel.org>
Subject: Re: Feature idea: git rebase --exec $CMD
Date: Wed, 23 May 2012 17:41:09 +0200 [thread overview]
Message-ID: <vpqd35udhwq.fsf@bauges.imag.fr> (raw)
In-Reply-To: <nngfwar3p9z.fsf@transit.us.cray.com> (dag@cray.com's message of "Wed, 23 May 2012 10:12:08 -0500")
<dag@cray.com> writes:
> Antonio Ospite <ospite@studenti.unina.it> writes:
>
>> I find the x/exec function in "git rebase -i" very useful, but it may
>> be tedious to edit the commit list to add something like "make test"
>> after each commit.
>
> I've taken a more general approach inspired by
> run-command-on-git-revisions at
> https://github.com/garybernhardt/dotfiles/tree/master/bin
>
> I took that and turned it into a git-run-command subcommand. It will
> take an arbitrary command and run it on each revision specified by a
> revlist.
That's sensible too. The nice things with running commands in "git
rebase" are:
* It's likely to be the place where you want to run some tests. The
typical use-case is that you have a patch serie whose last revision
passes tests, and you want to check that intermediate commits also do.
At that point, you probably want to rebase against upstream too, to
make sure you're developping against the latest revision, before
sening a patch serie or pushing.
* if the "exec" command fails, you're likely to be exactly in the right
place to fix it: fix the bug, run "git commit --amend", and "git
rebase --continue".
The nice thing with your approach (as I understand it) is that it
doesn't require rewritting history, and may apply to all commits in
non-linear history.
--
Matthieu Moy
http://www-verimag.imag.fr/~moy/
next prev parent reply other threads:[~2012-05-23 15:41 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-05 11:26 Feature idea: git rebase --exec $CMD Antonio Ospite
2012-05-05 11:54 ` Felipe Contreras
2012-05-06 10:03 ` Matthieu Moy
2012-05-06 10:44 ` Antonio Ospite
2012-05-06 12:26 ` Jeff King
2012-05-10 8:28 ` Matthieu Moy
2012-05-23 15:12 ` dag
2012-05-23 15:41 ` Matthieu Moy [this message]
2012-05-23 15:50 ` dag
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=vpqd35udhwq.fsf@bauges.imag.fr \
--to=matthieu.moy@grenoble-inp.fr \
--cc=dag@cray.com \
--cc=git@vger.kernel.org \
--cc=ospite@studenti.unina.it \
/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.