diff options
author | Nanako Shiraishi <nanako3@lavabit.com> | 2008-07-16 19:39:10 +0900 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-07-19 15:26:28 -0700 |
commit | 3e5057a8b4499f7b000cd465a3adf6ef22b89f2a (patch) | |
tree | e8c00bba661904dd95375a1cf05c8213f69883ae /t/t4151-am-abort.sh | |
parent | fcab40a389e99786a8276108cdbc1cda8caf502f (diff) | |
download | git-3e5057a8b4499f7b000cd465a3adf6ef22b89f2a.tar.gz |
git am --abort
After failing to apply patches in the middle of a series, "git am --abort"
lets you go back to the original commit.
[jc: doc/help update from Olivier, and fixups for "am -3" squashed in]
Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com>
Signed-off-by: Olivier Marin <dkr@freesurf.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4151-am-abort.sh')
-rwxr-xr-x | t/t4151-am-abort.sh | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/t/t4151-am-abort.sh b/t/t4151-am-abort.sh new file mode 100755 index 0000000000..dda7e2c28e --- /dev/null +++ b/t/t4151-am-abort.sh @@ -0,0 +1,56 @@ +#!/bin/sh + +test_description='am --abort' + +. ./test-lib.sh + +test_expect_success setup ' + for i in a b c d e f g + do + echo $i + done >file-1 && + cp file-1 file-2 && + test_tick && + git add file-1 file-2 && + git commit -m initial && + git tag initial && + for i in 2 3 4 5 + do + echo $i >>file-1 && + test_tick && + git commit -a -m $i || break + done && + git format-patch initial && + git checkout -b side initial && + echo local change >file-2-expect +' + +for with3 in '' ' -3' +do + test_expect_success "am$with3 stops at a patch that does not apply" ' + + git reset --hard initial && + cp file-2-expect file-2 && + + test_must_fail git am$with3 000[124]-*.patch && + git log --pretty=tformat:%s >actual && + for i in 3 2 initial + do + echo $i + done >expect && + test_cmp expect actual + ' + + test_expect_success "am --abort goes back after failed am$with3" ' + git-am --abort && + git rev-parse HEAD >actual && + git rev-parse initial >expect && + test_cmp expect actual && + test_cmp file-2-expect file-2 && + git diff-index --exit-code --cached HEAD && + test ! -f .git/rr-cache/MERGE_RR + ' + +done + +test_done |