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
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju-dev

Reply via email to