Hello,

On Fri 05 Apr 2024 at 03:19pm +01, Simon McVittie wrote:

> There are basically three dgit-compatible workflows, with some minor
> adjustments around handling of .gitignore files:
>
> - "patches applied" (git-debrebase, etc.):
>   This is the workflow that proponents of dgit sometimes recommend,
>   and dgit uses it as its canonicalized internal representation of
>   the package.
>   The git tree is the same as `dpkg-source -x`, with upstream source code
>   included, debian/ also included, and any Debian delta to the upstream
>   source pre-applied to those source files.
>   In the case of bubblewrap, if we used this workflow, after you clone
>   the project, bubblewrap.c would already have the Debian-specific error
>   message.
>   (dgit --split-view=never or dgit --quilt=dpm)
>
> - "patches unapplied" (gbp pq, quilt, etc.):
>   This is the workflow that many of the big teams use (at least Perl,
>   Python, GNOME and systemd), and is the one that bubblewrap really uses.
>   The git tree is the same as `dpkg-source -x --skip-patches`, with
>   upstream source code included, and debian/ also included.
>   Any Debian delta to the upstream source is represented in debian/patches
>   but is *not* pre-applied to the source files: for example, in the case
>   of bubblewrap, after you clone
>   https://salsa.debian.org/debian/bubblewrap.git and view bubblewrap.c,
>   it still has the upstream error message, not the Debian-specific one.
>   (dgit --quilt=gbp or dgit --quilt=unapplied; I use the latter)
>
> - debian/ only:
>   This is what you're advocating above.
>   The git tree contians only debian/. If there is Debian delta to the
>   upstream source, it is in debian/patches/ as usual.
>   (dgit --quilt=baredebian* family)

People interested in these differences may also want to look at:
    <https://wiki.debian.org/GitPackagingSurvey>.

>
> Again, checking for that error is something that can be (and is)
> automated: I use this workflow myself (e.g. in bubblewrap), so I know from
> experience that dgit *does* check for that error, and will fail to build
> the source package if the invariant does not hold. Again, dpkg-source
> in 3.0 (quilt) format will also make your source package fail to build
> if that error exists, except in the cases that it intentionally ignores.

Right, both dgit and tag2upload's client-side wrapped of git-tag(1),
git-debpush(1), do this check.  

-- 
Sean Whitton

Attachment: signature.asc
Description: PGP signature

Reply via email to