git cherry-pick does this as a git command. Tim
On 05/05/15 13:03, Jesse Meek wrote: > Hi All, > > tl;dr `git diff --no-prefix master > diff.patch; patch -p0 < diff.patch` > is useful for landing bug fixes in different versions of juju. > > As a lot of us are currently bug hunting and needing to land fixes in > multiple versions of Juju, I thought I'd share my process of doing that > (maybe it's helpful?): > > So say you've branched master, let's call it "bug-fix-master-branch", > it's got your fix but you need to land it in 1.24. So branch 1.24, let's > call it bug-fix-124, and do the following: > > # generate a diff of your changes that can be used with patch > (--no-prefix master is the magic flag that generates the right format) > (bug-fix-master-branch) $ git diff --no-prefix master > diff.patch > > # don't add or commit, checkout the other branch > (bug-fix-master-branch) $ git checkout bug-fix-124 > > # diff.patch is still there, unstaged. So use it to add the patch > (bug-fix-124) $ patch -p0 < diff.patch > > # do a sanity check > (bug-fix-124) $ git diff > > # remove the patch file > (bug-fix-124) $ rm diff.patch > > You've now got a bug-fix branch eligible for automatic merging targeting > 1.24. > > Cheers, > Jess > -- Juju-dev mailing list Juju-dev@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/juju-dev