1

We are following a process where we merge all the feature branches that needs to be released in a Release branch and merge it in master. Recently, we had some issues and we had to revert a release. After reverting, all feature in the release branch got reverted and since we want to release only specific features next, we need to cherry-pick commits. It was very difficult for us to cherry-pick the commit for every feature, since there were lots of commits and merge commits to consider. This situation is rare, but it had taken lots of effort and time from the development team to ensure every single commit were picked.

Is there an efficient way to reduce the time to cherry-pick the commits and also make sure all the commits related to feature are picked correctly?

nak
  • 846
  • 2
  • 10
  • 26
  • 1
    Do the branches still exist, or do you at least see their latest HEADs before a merge commit in the repository tree? Or are you working with a squash and/or rebase workflow? Did you consider `rebase`ing each feature branch on top of your reverted release branch? You could also just delete the release branch and create a new one from an older state. – kowsky Nov 12 '18 at 09:01
  • After merging to release we delete the feature branches and we do not squash the commits before merging. Since the feature branches are no longer available we cannot rebase. Also after merging to release branch, if a fix is needed to be applied, we do that in the release branch. – nak Nov 12 '18 at 09:35

0 Answers0