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

Reply via email to