Idea: sbuild/pbuilder "--dgit" option

Ian Jackson ijackson at chiark.greenend.org.uk
Thu Dec 15 20:25:53 UTC 2016


dgit has wrappers for lots of build tools, including sbuild,
git-buildpackage, dpkg-buildpackage, and hopefully soon pbuilder
(#844125).

This is because the default ignore rules (in dpkg-source) ignore
.gitignore, but dgit needs the source package to contain (any changes
to) .gitignore.  So dgit arranges that (if you use dgit to do the
build-for-upload) dpkg-source gets passed -i\.git/ -I.git.

Having dgit users have to use dgit as the way to invoke their builder
is undesirable.  It means a bigger disruption to their workflow and
adds yet another layer to what is often quite a tall stack.

What would you think (particularly, sbuild and pbuilder folks) about a
supporting a --dgit option ?  The effect would be to pass -i\.git/
-I.git to dpkg-source.  (Possibly there might be other effects which
would be desirable, but this is the only essential one for those two
tools I think.)

I'm mailing you both at once, with a big CC list, because ISTM that a
conventional option name would be better than having each tool do its
own thing.


I have CC'd git-buildpackage at p.d.o even though I think gbp probably
finds it a bit harder to support a --dgit option:

gbp would have to arrange to (if necessary) generate a patch for the
.gitignore, and that would have to find its way onto the user's git
HEAD somehow or something.  (Alternatively, gbp build --dgit could
call dgit to make a dgit view with the gitignore patch, I suppose.)


I have also CC'd git-dpm at p.d.o even though git-dpm doesn't (AFAICT)
itself have a build wrapper.  (So dgit doesn't have a wrapper for
git-dpm, although it does have a --quilt=dpm quilt fixup mode for
handling .gitignore.)

Also, I had a conversation with Bernhard in Heidelberg where he was
quite insistent that my (or, if you prefer, dgit's) rule that even
.gitignore must correspond between the git tree and the dpkg-source
output was wrong.  So I'm not really sure that he'll want to add any
support for this way of working.

Finally I don't really understand git-dpm enough to know what a --dgit
option would do even if there was one, but I think it might be an
alias for --dot-git-files=upstream.


Anyway, thanks to everyone for your opinions, whatever they may be.

Ian.

-- 
Ian Jackson <ijackson at chiark.greenend.org.uk>   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.



More information about the vcs-pkg-discuss mailing list