[ofiwg] managing stable branches
Jeff Squyres (jsquyres)
jsquyres at cisco.com
Tue Nov 28 06:55:14 PST 2017
What is the goal of this tag?
Putting a "TOKEN:VERSION" string in the commit message implies that the developer knows at commit creation time which release branch(es) the commit needs to be cherry picked to. Is this always the case?
I see 2 use cases:
1. The developer knows at commit creation time that the commit needs to be cherry picked to a release branch. The developer therefore puts "TOKEN:VERSION" in the commit message. At some point later, the developer scours the git logs looking for their commits with "TOKEN:VERSION" so that they can cherry pick them to the release branch.
2. The developer *doesn't* know at commit creation time that it needs to be cherry picked to a release branch. In this case, the developer puts "TOKEN:master" in the commit message. Later, the developer won't be able to scour git logs looking for what needs to be cherry picked.
Here's the problems I see with this:
1. This scheme presumes that the developer knows that a commit needs to be ported to a release branch at commit creation time. However, we don't have a well-defined scheme for releases from release branches -- they happen on an ad hoc basis, such as when someone has a critical bug fix to put out. But then others pile on and put in non-critical bug fixes. And it's exactly those non-critical bug fixes are somewhat hard to find by scouring git logs. But those commits will be marked with "TOKEN:master", so this scheme won't help find those commits.
2. The majority of commits only need to go to master. Adding "TOKEN:master" strings to all of those commits seems like it does not optimize for the common case.
I think that if a developer knows that a commit needs to go to a release branch, he/she should put a label on the master PR containing the commit(s) that need to be cherry picked that will remind the developer to make a release branch PR when that master PR is merged.
Just my $0.02...
> On Nov 27, 2017, at 8:09 PM, Paulson, Erik R <erik.r.paulson at intel.com> wrote:
>
> I like the idea, but I don't support using the word "TAG" since that word is already associated with both git tags and tag-matching. I propose that we use "Backport-To:" or "Cherrypick-To:".
>
>
> Best,
>
> Erik Paulson
>
> -----Original Message-----
> From: ofiwg [mailto:ofiwg-bounces at lists.openfabrics.org] On Behalf Of Hefty, Sean
> Sent: Monday, November 27, 2017 4:41 PM
> To: ofiwg at lists.openfabrics.org
> Subject: [ofiwg] managing stable branches
>
> There are currently 2 stable branches actively being updated - 1.4.x and 1.5.x. Up until this point, stable branches have resulted in limited additional work -- at least to anyone other than me :).
>
> To assist with the process, I'd propose including a tag the signed-off-by area to indicate if a patch should be cherry-picked. This is similar to the linux-kernel method. For example:
>
> TAG: v1.5.x
> Signed-off-by: Big Bird <bbird at sesame.street>
>
> or
>
> TAG: stable
> Signed-off-by: Oscar <scram at sesame.street>
>
> If we use this, we would need to select the 'TAG' (or just use 'TAG'), as well as listing what values are possible (specific branches or general stable).
>
> - Sean
> _______________________________________________
> ofiwg mailing list
> ofiwg at lists.openfabrics.org
> http://lists.openfabrics.org/mailman/listinfo/ofiwg
> _______________________________________________
> ofiwg mailing list
> ofiwg at lists.openfabrics.org
> http://lists.openfabrics.org/mailman/listinfo/ofiwg
--
Jeff Squyres
jsquyres at cisco.com
More information about the ofiwg
mailing list