From: Ian Jackson Date: Wed, 29 May 2019 20:22:41 +0000 (+0100) Subject: git-workflows: reformat X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit-junk.git;a=commitdiff_plain;h=d07325a664a3c6304e167a9a465c53e8256130c7 git-workflows: reformat --- diff --git a/git-workflows b/git-workflows index 56688e4..68b305e 100644 --- a/git-workflows +++ b/git-workflows @@ -1,72 +1,148 @@ -From: Ian Jackson -To: debian-devel@lists.debian.org -Subject: Survey: git packaging practices / repository format -Date: Tue, 28 May 2019 16:51:10 +0100 - -While trying to write the dgit FAQ, and some of the relevant docs, it -has become even more painfully obvious that we lack a good handle on -what all the different ways are that people use git to do their Debian -packaging, and what people call these formats/workflows, and what -tools they use. - -Can you please look through the table below and see if I have covered -everything you do ? - -In particular: - - have I missed a git repository and history layout - - have I missed a primary tool that should be mentioned - - are any of the details wrong for workflows that you use ? - - Main packaging Delta from upstream Tools for manipulating - git branch represented as delta from upstream, - contains building .dsc, etc. - - Unmodified debian/patches gbp, gbp pq - upstream files, (only) quilt / dquilt - plus debian/* Manual patch editing + + Main packaging + git branch + contains + +- + +Delta from upstream + represented as + +- + +Tools for manipulating + delta from upstream, + building .dsc, etc. + + +================================================== + + Unmodified + upstream files, + plus debian/* incl. d/patches - Modified Direct changes git merge - upstream files, to upstream files (.dsc: 1.0-with-diff or - plus debian/*. single-debian-patch) +- + +debian/patches + (only) + +- + +gbp, gbp pq +quilt / dquilt +Manual patch editing + +================================================== + + Modified + upstream files, + plus debian/*. Maybe d/patches, depending. History has direct merges from upstream. - Modified Direct changes to git-debrebase - upstream files, upstream files. +- + +Direct changes + to upstream files + +- + +git merge + (.dsc: 1.0-with-diff or + single-debian-patch) + +================================================== + + Modified + upstream files, plus debian/* Sometimes d/patches. History is special git-debrebase rebasing topic branch format. - Modified Direct changes to git-dpm - upstream files, upstream files +- + +Direct changes to + upstream files. + +- + +git-debrebase + +================================================== + + Modified + upstream files, plus debian/*, plus d/patches, plus .git-dpm History is special git-dpm rebasing topic branch format. - Only debian/*, d/patches, only; gbp ? - with d/patches Baseline upstream: quilt/dquilt ? - changelog version => - upstream git tag - - Only debian/*, d/patches, only; gbp ? - with d/patches Baseline upstream: quilt/dquilt ? - changelog version => - .orig tarball(s) - - Template debian/*. Patches in package- language-specific - One branch for specific subdirectory; monorepo tooling, - many packages. found in same branch - Tooling to make Baseline upstream is - d/control etc. named by reference somehow +- + +Direct changes to + upstream files + +- + +git-dpm + +================================================== + + Only debian/*, + with d/patches + +- + +d/patches, only; +Baseline upstream: + changelog version => + upstream git tag + +- + +gbp ? +quilt/dquilt ? + +================================================== + + Only debian/*, + with d/patches + +- + +d/patches, only; +Baseline upstream: + changelog version => + .orig tarball(s) + +- + +gbp ? +quilt/dquilt ? + +================================================== + + Template debian/*. + One branch for + many packages. + Tooling to make + d/control etc. during build -Thanks, -Ian. +- + +Patches in package- + specific subdirectory; + +Baseline upstream is + named by reference somehow + +- + +language-specific + monorepo tooling, + found in same branch --- -Ian Jackson These opinions are my own. -If I emailed you from an address @fyvzl.net or @evade.org.uk, that is -a private address which bypasses my fierce spamfilter. +==================================================