On Thu, Dec 6, 2018 at 6:12 AM Florian Weimer <fwei...@redhat.com> wrote:
> I'm worried that this kind of pointless work makes it hard to attract
> talent.

Florian, you might want to check out rdopkg.
https://github.com/softwarefactory-project/rdopkg . It's a bit like
fedpkg, in that it's a CLI with sub-commands.

The idea is that you have three Git remotes:

origin    ssh://ktdre...@pkgs.fedoraproject.org/rpms/remctl
patches    g...@example.com:ktdreyer/remctl
upstream    https://git.eyrie.org/git/kerberos/remctl.git

The "origin" is dist-git, the "upstream" is obviously the upstream
project, and the "patches" remote is a fork of upstream.

You can maintain all your backports and cherry-picks in the "patches"
remote, in "-patches" branches. So for rawhide, the dist-git branch is
"master", so the patches branch would be "master-patches". This branch
is the upstream point release tag, plus any downstream cherry-picks.

The "rdopkg patch" command will automatically run git-format-patch
with the proper commit range and inject the patch series into the
.spec file. It will update the %changelog and dist-git commit message
as well.

We use that to maintain several hundred cherry-picks across many
different releases of Ceph. The RDO teams use it to help maintain over
800 packages. (I have "rdopkg patch" running in Jenkins also, so the
rest of my team can just do "git cherry-pick -x" for their backports
and not have to touch packaging or dist-git.)

We get the strong history preservation guarantees that dist-git always
gives us, along with the flexibility to rebase or edit patch series
quickly. The patches remote can live anywhere. It is similar to
Debian's patch-queue concept from git-buildpackage.

Even if you maintain a package in Fedora that has just one or two
patches, it is really handy to use rdopkg to manage that. You can jump
back and forth between the "-patches" branch and the dist-git branch.
The ability to quickly rebase or amend patches makes packaging fun
again (for me anyway :)

- Ken
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to