Hi Rohit
On 20/06/2019 11:34, Rohit Ashiwal wrote:
Hi Phillip
On 2019-06-20 10:02 UTC Phillip Wood <phillip.wood123@xxxxxxxxx> wrote:
+test_expect_success 'allow skipping stopped cherry-pick because of untracked file modifications' '
+ pristine_detach initial &&
+ git rm --cached unrelated &&
+ git commit -m "untrack unrelated" &&
+ test_must_fail git cherry-pick initial base &&
+ test_path_is_missing .git/CHERRY_PICK_HEAD &&
+ git cherry-pick --skip
If you change this to --continue rather than --skip the test also
passes! I think we could fix this by checking if HEAD has changed if
CHERRY_PICK_HEAD/REVERT_HEAD is missing and not dropping the last
command in the todo list in that case when we continue.
I don't think I fully understood this. At this point --skip is essentially
--continue. How is checking unmoved HEAD and unchanged todo uniquely related
to --skip flag (or for that matter any _flag_)?
My point is that --continue should reschedule the failed pick and try to
pick it again - it should not silently skip a failed pick and --skip
should skip it.
Best Wishes
Phillip
Thanks
Rohit