On Sat, Feb 08, 2020 at 10:07:48PM +0200, Otto Kekäläinen wrote: > Hello! > > I've ended up in being both the maintainer in Debian and an upstream > developer for a couple of packages and I have been fantasizing about > how to optimize my workflow so that I primarily fix all bugs and do QA > directly on the upstream development version (=upstream git master) > and then have only a very small overhead work then importing and > uploading new upstream releases in Debian.
So, I have four packages that are in various ways similar to this: - nbd, which I started maintaining in Debian before becoming upstream for it; - SReview, which I started maintaining upstream before uploading it to Debian; - fdpowermon, which I released first by uploading it to Debian; - ola, which I maintain for Debian and do not really maintain upstream, but which upstream did give me commit rights to their repository for. I have separate upstream and debian branches for nbd; however, if someone reports a bug, I will fix it upstream first, and then (possibly, if applicable and it's too soon to release an upstream version) cherry-pick the patch to the debian branch. There is no debian/ directory in the upstream branch. Updating to a new upstream release for Debian involves a simple "git merge" of the upstream branch, which will always work if I never violated that policy. Needless to say, nbd is not a native package. I do not maintain separate branches for SReview or fdpowermon. The difference between the two, however, is that SReview is uploaded to CPAN as well as Debian. The CPAN upload does not contain the debian/ directory, and I do use the tarball of the CPAN upload as the orig.tar.gz for the Debian upload. However, they're both built from the same git checkout. Fdpowermon, on the other hand, I do not upload it to CPAN (it's too simple for that), and is instead uploaded as a native package to Debian. For ola, upstream at one point committed a squash commit of all the Debian patches I had committed to my debian branch at that point in time. The next time I tried to merge their newest release by way of the git tag, things went a bit haywire. I do not recommend this approach. -- To the thief who stole my anti-depressants: I hope you're happy -- seen somewhere on the Internet on a photo of a billboard