mirror of
https://github.com/git/git.git
synced 2026-01-09 17:46:37 +00:00
Merge branch 'pw/advise-rebase-skip'
The mechanism to prevent "git commit" from making an empty commit or amending during an interrupted cherry-pick was broken during the rewrite of "git rebase" in C, which has been corrected. * pw/advise-rebase-skip: commit: give correct advice for empty commit during a rebase commit: encapsulate determine_whence() for sequencer commit: use enum value for multiple cherry-picks sequencer: write CHERRY_PICK_HEAD for reword and edit cherry-pick: check commit error messages cherry-pick: add test for `--skip` advice in `git commit` t3404: use test_cmp_rev
This commit is contained in:
@@ -161,6 +161,29 @@ test_expect_success 'successful commit clears CHERRY_PICK_HEAD' '
|
||||
|
||||
test_must_fail git rev-parse --verify CHERRY_PICK_HEAD
|
||||
'
|
||||
|
||||
test_expect_success 'partial commit of cherry-pick fails' '
|
||||
pristine_detach initial &&
|
||||
|
||||
test_must_fail git cherry-pick picked &&
|
||||
echo resolved >foo &&
|
||||
git add foo &&
|
||||
test_must_fail git commit foo 2>err &&
|
||||
|
||||
test_i18ngrep "cannot do a partial commit during a cherry-pick." err
|
||||
'
|
||||
|
||||
test_expect_success 'commit --amend of cherry-pick fails' '
|
||||
pristine_detach initial &&
|
||||
|
||||
test_must_fail git cherry-pick picked &&
|
||||
echo resolved >foo &&
|
||||
git add foo &&
|
||||
test_must_fail git commit --amend 2>err &&
|
||||
|
||||
test_i18ngrep "in the middle of a cherry-pick -- cannot amend." err
|
||||
'
|
||||
|
||||
test_expect_success 'successful final commit clears cherry-pick state' '
|
||||
pristine_detach initial &&
|
||||
|
||||
|
||||
Reference in New Issue
Block a user