author | Matthieu Moy <Matthieu.Moy@imag.fr> | |
Tue, 10 Aug 2010 15:17:51 +0000 (17:17 +0200) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Wed, 11 Aug 2010 17:21:34 +0000 (10:21 -0700) | ||
commit | cd035b1cef39811fd3116aa07d99395960ec947a | |
tree | 6f7a28433e7ac08f97333912a4ef74857d627a48 | tree | snapshot |
parent | 64fdc08dac6694d1e754580e7acb82dfa4988bb9 | commit | diff |
rebase -i: add exec command to launch a shell command
The typical usage pattern would be to run a test (or simply a compilation
command) at given points in history.
The shell command is ran (from the worktree root), and the rebase is
stopped when the command fails, to give the user an opportunity to fix
the problem before continuing with "git rebase --continue".
This needs a little rework of skip_unnecessary_picks, which wasn't robust
enough to deal with lines like
exec >"file name with many spaces"
in the todolist. The new version extracts command, sha1 and rest from
each line, but outputs the line itself verbatim to avoid changing the
whitespace layout.
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
The typical usage pattern would be to run a test (or simply a compilation
command) at given points in history.
The shell command is ran (from the worktree root), and the rebase is
stopped when the command fails, to give the user an opportunity to fix
the problem before continuing with "git rebase --continue".
This needs a little rework of skip_unnecessary_picks, which wasn't robust
enough to deal with lines like
exec >"file name with many spaces"
in the todolist. The new version extracts command, sha1 and rest from
each line, but outputs the line itself verbatim to avoid changing the
whitespace layout.
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-rebase.txt | diff | blob | history | |
git-rebase--interactive.sh | diff | blob | history | |
t/lib-rebase.sh | diff | blob | history | |
t/t3404-rebase-interactive.sh | diff | blob | history |