#!/bin/sh test_description='cherry-pick should rerere for conflicts' . ./test-lib.sh test_expect_success setup ' echo foo >foo && git add foo && test_tick && git commit -q -m 1 && echo foo-master >foo && git add foo && test_tick && git commit -q -m 2 && git checkout -b dev HEAD^ && echo foo-dev >foo && git add foo && test_tick && git commit -q -m 3 && git config rerere.enabled true ' test_expect_success 'conflicting merge' ' test_must_fail git merge master ' test_expect_success 'fixup' ' echo foo-dev >foo && git add foo && test_tick && git commit -q -m 4 && git reset --hard HEAD^ && echo foo-dev >expect ' test_expect_success 'cherry-pick conflict' ' test_must_fail git cherry-pick master && test_cmp expect foo ' test_expect_success 'reconfigure' ' git config rerere.enabled false && git reset --hard ' test_expect_success 'cherry-pick conflict without rerere' ' test_must_fail git cherry-pick master && test_must_fail test_cmp expect foo ' test_done