I have a develop
and a release
branch.
I created a patch branch from develop
with 6 commits A, B, C, D, E, F (with A
being the oldest). It was reviewed and then three-way merged back into develop
.
I then created a similar fix branch from release
(for review) and cherry picked commits from my develop
-based fix branch onto my release
-based fix branch like so:
git checkout release/patch/ticket1
git cherry-pick A^..F
This resulted in an unexpected merge conflict while applying patches.
I git cherry-pick --abort
ed and instead tried
git cherry-pick A
git cherry-pick B
git cherry-pick C
git cherry-pick D
git cherry-pick E
git cherry-pick F
And this worked without conflict.
I thought cherry-pick
created a patch from each commit and applied them in sequence to the target branch?
So how is it possible that I have encountered a merge conflict when specifying a range but not when applying individual commits?
Related
EDIT
I attempted tests suggested from the comments and could not reproduce my problem. As my understanding of the cherry-pick sequencer is correct, I'll have to assume the intervention of some other actor (IDE, locking watcher process?).