summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Caio Marcelo de Oliveira Filho <cmarcelo@gmail.com>2008-02-25 23:14:31 -0300
committerLibravatar Junio C Hamano <gitster@pobox.com>2008-02-25 21:43:37 -0800
commit41e86a377496231709a5fb78df730df7be80b6c9 (patch)
treec3e8c3930f1e1a7d56dbd4b9fd7cb64e9106cc8b
parentrev-parse: fix potential bus error with --parseopt option spec handling (diff)
downloadtgif-41e86a377496231709a5fb78df730df7be80b6c9.tar.xz
filter-branch documentation: non-zero exit status in command abort the filter
Since commit 8c1ce0f46b85d40f215084eed7313896300082df filter-branch fails when a <command> has a non-zero exit status. This commit makes it clear in the documentation and also fixes the parent-filter example, that was incorrectly returning non-zero when the commit being tested wasn't the one to be rewritten. Signed-off-by: Caio Marcelo de Oliveira Filho <cmarcelo@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Documentation/git-filter-branch.txt6
1 files changed, 4 insertions, 2 deletions
diff --git a/Documentation/git-filter-branch.txt b/Documentation/git-filter-branch.txt
index 1948f6f72c..543a1cf105 100644
--- a/Documentation/git-filter-branch.txt
+++ b/Documentation/git-filter-branch.txt
@@ -56,7 +56,9 @@ notable exception of the commit filter, for technical reasons).
Prior to that, the $GIT_COMMIT environment variable will be set to contain
the id of the commit being rewritten. Also, GIT_AUTHOR_NAME,
GIT_AUTHOR_EMAIL, GIT_AUTHOR_DATE, GIT_COMMITTER_NAME, GIT_COMMITTER_EMAIL,
-and GIT_COMMITTER_DATE are set according to the current commit.
+and GIT_COMMITTER_DATE are set according to the current commit. If any
+evaluation of <command> returns a non-zero exit status, the whole operation
+will be aborted.
A 'map' function is available that takes an "original sha1 id" argument
and outputs a "rewritten sha1 id" if the commit has been already
@@ -197,7 +199,7 @@ happened). If this is not the case, use:
--------------------------------------------------------------------------
git filter-branch --parent-filter \
- 'cat; test $GIT_COMMIT = <commit-id> && echo "-p <graft-id>"' HEAD
+ 'test $GIT_COMMIT = <commit-id> && echo "-p <graft-id>" || cat' HEAD
--------------------------------------------------------------------------
or even simpler: