(Been away from git for quite a while and though there are similar questions here most seem to gloss over this part... which probably means it should be obvious... sorry...)
Scenario:
So I have a feature that was developed on it's own branch, and after testing and approval merged to develop (not-ff; I prefer to see the changes) and all is happy.
But then financials get involved and we agree to release the same feature to a client on a legacy version.
Now it happens that this particular area is pretty compatible still. So I could just cherry pick one change after the other onto the target branch and I get no conflicts and have to do a tiny update at the end and I'm done...
But is there a better way to apply all the deltas of the feature branch directly to the legacy release in the same non-ff manner as before without doing a cherry pick of each change?
For the more pictorial...
Before Greed:
c1 -> c2 -> c3 -> c4 -> c5 -> c7 -> c8 -> ... c130 -> c133 -> (m)c135 -> c136 (develop)
\ \ /
-> c6 -> c9 \ / (release/legacy)
-> c131 -> c132 (feature/awesomeFeature)
Cherry Pick:
c1 -> c2 -> c3 -> c4 -> c5 -> c7 -> c8 -> ... c130 -> c133 -> (m)c135 -> c136 (develop)
\ \ /
-> c6 -> c9 -> c131' -> c132' -> c137 \ / (release/legacy)
-> c131 -> c132 (feature/awesomeFeature)
('s are cherry picks and c137 is a small cleanup of any bits that weren't quite there in the legacy)
What I'd like:
c1 -> c2 -> c3 -> c4 -> c5 -> c7 -> c8 -> ... c130 -> c133 -> (m)c135 -> c136 (develop)
\ \ /
-> c6 -> c9 -> (m)c138 \ / (release/legacy)
\ / -> c131 -> c132 (feature/awesomeFeature)
\ /
-> c131 -> c132 -> c137 (feature/monetizedAwesomeFeature)
(ie c137 is a small cleanup of any bits that weren't quite there in the legacy)
What's the neatest way to achieve this (and obviously the case here is a lot more than just 2 commits on the feature)?