Skip to content

Commit

Permalink
Skip using cherry-pick
Browse files Browse the repository at this point in the history
  • Loading branch information
LukeAbby committed Dec 23, 2024
1 parent 6130085 commit d97dc20
Showing 1 changed file with 5 additions and 21 deletions.
26 changes: 5 additions & 21 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -180,17 +180,9 @@ jobs:
range="$before..${{ github.event.pull_request.head.sha || github.event.after }}"
echo "Checking if $range can be cherry-picked onto the maintenance branch."
echo "Checking if $range can be applied 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" || (
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
git diff "$range" | git apply --3wa
- name: Install Node
if: steps.should_skip.outputs.should_skip != 'true'
Expand Down Expand Up @@ -242,21 +234,13 @@ jobs:
range="${{ github.event.before }}..${{ github.event.after }}"
echo "Cherry picking $range onto the maintenance branch."
# Pick the freshly added commits onto the maintenance branch.
if git cherry-pick --allow-empty -m 1 "$range"; then
exit 1
else
git cherry-pick --abort
echo "Falling back to 3way apply!"
fi
echo "Applying $range onto the maintenance branch."
git diff c33b7c566118dfc9179a66d312f5ef36bb8a5167..526a3c747d76c1b2f61221ec56ed1e132b5e416e | git apply --3wa || (
git diff "$range" | 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
)
git commit -m "Applied c33b7c566118dfc9179a66d312f5ef36bb8a5167..526a3c747d76c1b2f61221ec56ed1e132b5e416e"
git commit -m "Applied "$range""
- name: Push changes
uses: ad-m/github-push-action@master
Expand Down

0 comments on commit d97dc20

Please sign in to comment.