Skip to content

Commit

Permalink
Fallback to 3way apply
Browse files Browse the repository at this point in the history
  • Loading branch information
LukeAbby committed Dec 22, 2024
1 parent 5027829 commit 9b5e4f9
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -182,10 +182,16 @@ jobs:
echo "Checking if $range can be cherry-picked onto the maintenance branch."
# Using cherry-pick preserves the history of the commits so it's normally ideal.
git cherry-pick --allow-empty --no-commit -m 1 "$range" || (
echo "Merge conflicts detected with the maintenance branch!" && exit 1
git cherry-pick --abort
echo "Cannot cherry-pick onto the maintenance branch! Will try git apply."
)
# But if an intermediary commit fails to merge cleanly then cherry-pick fails.
# So use a 3-way merge to apply the changes.
git diff c33b7c566118dfc9179a66d312f5ef36bb8a5167..526a3c747d76c1b2f61221ec56ed1e132b5e416e | git apply --3wa
- name: Install Node
if: steps.should_skip.outputs.should_skip != 'true'
uses: actions/setup-node@v4
Expand Down Expand Up @@ -240,7 +246,12 @@ jobs:
# Pick the freshly added commits onto the maintenance branch.
git cherry-pick --allow-empty -m 1 "$range" || (
echo "Merge conflicts detected with maintenance branch! This can only happen if there is a bug in checkCanMergeToMaintenance or mergeToMaintenance or someone pushed in between!" && exit 1
git cherry-pick --abort
echo "Falling back to 3way apply!"
)
git diff c33b7c566118dfc9179a66d312f5ef36bb8a5167..526a3c747d76c1b2f61221ec56ed1e132b5e416e | git apply --3wa || (
echo "Both cherry-pick and 3way apply failed! This can only happen if there is a bug in checkCanMergeToMaintenance or mergeToMaintenance or someone pushed in between!" && exit 1
)
- name: Push changes
Expand Down

0 comments on commit 9b5e4f9

Please sign in to comment.