Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create cherry-pick-to-support.yml #1387

Closed
wants to merge 2 commits into from

Conversation

KerstinKeller
Copy link
Contributor

Allow to cherry pick pick selected commits to support branches.

@FlorianReimold FlorianReimold marked this pull request as draft February 20, 2024 12:43
@FlorianReimold
Copy link
Member

FlorianReimold commented Feb 20, 2024

Currently testing in a fork. I will report back once the tests are finished. I will make necessary modifications in this branch.

@FlorianReimold
Copy link
Member

FlorianReimold commented Feb 20, 2024

I fixed the workflow a little. The remaining issues are:

  1. The Action is already deprecated and will seize to function in "Spring 2024"

    Cherry pick into support/v5.12
    Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: carloscastrojumo/github-cherry-pick-action@v1.0.9.
    For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
    
  2. The Action fails when getting a cherry-pick conflict. I will be easy to overlook those, as no PR is created for conflicting commits. It would be better to get anything that can be used for fixing the conflict.
    Solution: Let the workflow create an issue or an empty PR that the user can use for cherry-picking & resolving merge conflicts

    image

  3. The labels are a little more verbose than I would like them to be. The action re-labels the cherry-pick PRs with the original labels, so all cherry-pick PRs are marked for cherry-picking again.

    image

@FlorianReimold
Copy link
Member

FlorianReimold commented Feb 21, 2024

Another issue I have found is when using Rebase-merges:

  • The action only cherry-picks the last commit of a rebase merge and loses everything else. The following cherr-pick PR was created from 2 rebased commits that added "Commit 13" and "Commit 14" to a readme file, but only "Commit 14" is present in the cherry-pick PR

    Solutions

    image

  • The action sometimes cherry-picks lines that were not changed by the PR. I think it has something to do with the options --strategy=recursive --strategy-option=theirs:
    The original PR had 2 rebase-merged commits that added the lines "Commit 8" and "Commit 9"

    Solution: Fork or re-implement cherry pick job without a strategy option, so the user has to resolve the conflict themselves

    image

    However, the cherry-pick PR added other ascending lines as well, that were changed on master but don't exist on the support branch, yet.

    image

@KerstinKeller
Copy link
Contributor Author

I will close this PR. We do have the documentation and can take a look again at a later time.

@FlorianReimold FlorianReimold deleted the feature/cherry-pick-action branch March 12, 2024 10:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants