bugs, fixes and targeting Juju versions

Jesse Meek jesse.meek at canonical.com
Tue May 5 01:45:26 UTC 2015


Ah, even better. Now I can update my workflow :)

On 05/05/15 13:43, Menno Smits wrote:
> cherry-pick will even grab the top commit of a branch if you give the 
> branch name (presuming the fix is a single commit). For example:
>
> git checkout -b bug-fix-1.24 upstream/1.24 # create a branch for the 
> fix in 1.24
> git cherry-pick bug-fix-master-branch       # pull the fix across
>
> There are various ways of grabbing multiple revisions too.
>
> And of course, as per Ian's recent email you should be targeting fixes 
> to the lowest affected version and working forwards. So really in your 
> example the fix should be made for 1.24 and the cherry picked onto a 
> branch made from master.
>
>
>
>
> On 5 May 2015 at 13:15, Tim Penhey <tim.penhey at canonical.com 
> <mailto:tim.penhey at canonical.com>> wrote:
>
>     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 at lists.ubuntu.com <mailto:Juju-dev at lists.ubuntu.com>
>     Modify settings or unsubscribe at:
>     https://lists.ubuntu.com/mailman/listinfo/juju-dev
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/juju-dev/attachments/20150505/98bc610f/attachment-0001.html>


More information about the Juju-dev mailing list