aboutsummaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorJohannes Schindelin <Johannes.Schindelin@gmx.de>2007-08-31 20:05:36 +0100
committerJunio C Hamano <gitster@pobox.com>2007-08-31 23:22:51 -0700
commit7e0f1704b837355d833d84d18a3811d145867b97 (patch)
treed8373eb4b75792ae70aa800e9c5dad84e57cfa9b /t
parentf0fd889d7ff02efe8ee4a25ae2380db47c128682 (diff)
downloadgit-7e0f1704b837355d833d84d18a3811d145867b97.tar.gz
git-7e0f1704b837355d833d84d18a3811d145867b97.tar.xz
filter-branch: provide the convenience functions also for commit filters
Move the convenience functions to the top of git-filter-branch.sh, and return from the script when the environment variable SOURCE_FUNCTIONS is set. By sourcing git-filter-branch with that variable set automatically, all commit filters may access the convenience functions like "map". Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-xt/t7003-filter-branch.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/t/t7003-filter-branch.sh b/t/t7003-filter-branch.sh
index bc6e2ddb1..c79853d98 100755
--- a/t/t7003-filter-branch.sh
+++ b/t/t7003-filter-branch.sh
@@ -159,4 +159,14 @@ test_expect_success 'barf on invalid name' '
! git filter-branch -f HEAD^
'
+test_expect_success '"map" works in commit filter' '
+ git filter-branch -f --commit-filter "\
+ parent=\$(git rev-parse \$GIT_COMMIT^) &&
+ mapped=\$(map \$parent) &&
+ actual=\$(echo \"\$@\" | sed \"s/^.*-p //\") &&
+ test \$mapped = \$actual &&
+ git commit-tree \"\$@\";" master~2..master &&
+ git rev-parse --verify master
+'
+
test_done