I’m curious if any experimentation has been done with the `git cherry-pick` 
command? This sounds like the ideal use case where it would preserve the 
history and give the PR initiator co-authorship. You might have already 
explored this, but just wanted to mention it. Here’s a small article explaining 
a similar use case: 
http://technosophos.com/2009/12/04/git-cherry-picking-move-small-code-patches-across-branches.html

> On Feb 7, 2023, at 4:32 PM, John Gemignani <john.gemign...@bitnine.net> wrote:
> 
> Hi All,
> 
> There is a need to discuss our strategy going forward for migrating commits
> from, as an example, AGE for PG 11 (called PG11 from this point) to AGE for
> PG 12, 13, etc. (called PG<version>, from this point) for newly supported
> PostgreSQL version branches.
> 
> First, I'm no Github expert and welcome any viable, potential alternatives.
> So, please do add suggestions or comments.
> 
> The issues that arise come down to the *author *and *co-author* of the work
> being moved from one version to another. These issues are due to the
> creation of newly supported PostgreSQL version branches and the adding of
> commits that were not part of the previous version, at the time of the
> creation of these new branches.
> 
> Please note: Once a new branch is synchronized (brought up to current), it
> will be up to the individuals who put forth a PR, to apply it to applicable
> versions. We will only be migrating commits to synchronize newly created
> branches. This means that, once a branch is synchronized, any new PRs
> added, are the responsibility of the PR creators. For example, if one
> creates a PR for PG11, and PG12 and PG13 have been synchronized at the
> time, it will be up to that person to create a PR for PG12 and PG13.
> 
> As far as I'm aware, other than modifying patch files directly, there are
> only 2 ways to migrate a commit from one separate branch to another.
> Remember, these branches are diverging.
> 
>   1. Extract a patch manually, apply it to a local feature branch, make
>   sure that everything works as expected, rebase it to the local PG branch,
>   then push that branch back to the remote.
>   2. This is similar to #1, except it is done as a PR.
> 
> Using option #1, the original author of the patch is preserved, but there
> is no co-author information for the person doing the migration.
> Additionally, it doesn't use a PR, so isn't as trackable.
> Using option #2, the original author is changed to the PR creator and the
> original author is now the co-author.
> 
> Our preference would be to preserve the original author, as the author, and
> have the person writing the PR become the co-author. However, it doesn't
> appear as if that is possible. The co-author is important to keep as a
> record of who did the work migrating the PR and, they potentially did a lot
> of work to migrate that patch.
> 
> Being faced with these two options, neither of which are ideal, we're
> leaning towards option #2.
> 
> This is where anyone who has any comments, experience, or expertise is
> welcome to speak up. Additionally, if there are any reasonably viable
> alternatives, we would be interested in hearing them out.
> 
> Otherwise, provided no input or reasonable alternatives we will be going
> with option #2.
> 
> Thank you to everyone in advance,
> 
> John Gemignani

Reply via email to