Hi.

Osamu Aoki writes ("Bug#998394: dgit push fails for native with .gitignore"):
> Package: dgit
> Version: 9.14
> Severity: normal
> 
> native source package drops .gitignore when making tar.
> 
> If I try to make "dgit push" on such package after building binary
> packages with sbuild, dgit fails because tar is missing .gitignore .

I infer that you built the source package directly, without using dgit
- ie, using raw sbuild without any options to control -i -I.  That the
.gitignore is missing from the source package is a bug in dpkg-source,
#908747.

The workaround is to use dgit to build your source package.  dgit
knows what options to pass to dpkg-source to override the bad default.

When you use dgit push-source this is all done in one go, so you don't
notice that the source package is being built with those special
options.  When one builds binaries, one indeed normally uses something
like sbuild.  The solution in this case is to use "dgit sbuild" rather
than "sbuild".  dgit knows what options to pass to sbuild.  And you
can more or less use "dgit sbuild" like "sbuild".

I appreciate that this is suboptimal - yet another layer of build
wrapper, with extra complexity and confusion - but it is necessary
that the upload tarball is created *with* the .gitignore (so that the
dgit git branch and the uploaded .dsc are identical).  Until #908747
is fixed this is the only way to achieve it.

I think this is documented in the manuals where appropriate.  But
evidently you didn't see it.  So maybe we need to add a note
somewhere.  So can you tell me where in the documentation you looked ?

Thanks,
Ian.

Reply via email to