Bug#842614: Bug#842608: dgit pull should bail out in splitbrain mode

2017-06-21 Thread Ian Jackson
Control: clone -1 -2
Control: retitle -2 problem with --quilt=gbp, maybe .gitignore .pc
Control: severity -2 normal
Control: tags -2 + moreinfo
Control: submitter -2 Felipe Sateler 

Felipe, whatever is going on here is nothing to do with `dgit pull', I
think.  At least, I hope you didn't see these messages with `dgit
pull', since dgit is supposed to reject `dgit pull --quilt=gbp' (see
#842608).

So I am cloning this bug.  If you'd like to provide more information
about your situation we can perhaps help, or improve dgit, but please
do so in the cloned bug.

Thanks,
Ian.



Bug#842614: Bug#842608: dgit pull should bail out in splitbrain mode

2017-06-21 Thread Ian Jackson
Felipe Sateler writes ("Bug#842614: Bug#842608: dgit pull should bail out in 
splitbrain mode"):
> But the clash between the upstream gitignore and the debian one breaks dgit.
> 
> Or at least that's what I think it happened when I tried to use dgit. As I 
> said
> in my earlier message, the dgit output is unparseable for me :(

I'm sorry that you found the error message incomprehensible.  It's
difficult to know how to improve this without having dgit spit out an
essay.

Are you sure that this is caused by .gitignore ?

Let me explain these messages:

 |  dgit: split brain (separate dgit view) may be needed (--quilt=gbp).

dgit is simply saying that because you specified --quilt=gbp, it may
need to use split view mode.  It's going to check.

 |  dgit: base trees orig=d510ca798480f37fc567 o+d/p=5c8951c97cef58952a93

dgit creates a git object corresponding to the contents of the
.orig.tar.gz.  That git object is d510ca798480f37fc567.  dgit calls it
"orig" in some of the next output.

It also creates a git object corresponding to the .orig.tar.gz but
with debian/ copied from your .debian.tar.gz.  That's a "patches
unapplied" tree.  That git object is 5c8951c97cef58952a93.
dgit calls this "o+d/p" in some of the next output.  TBH maybe it
ought to be called "o+d".

These git object names are provided so you can use `git diff' etc. to
investigate what's going on.

 |  dgit: quilt differences: src:  ## orig ## gitignores:  == orig ==
 |  dgit: quilt differences:  HEAD ## o+d/p   HEAD == o+d/p

dgit is reporting the differences between these various trees.  It
considers only differences outside debian/, and separates out the
comparison of .gitignores from the comparison of other files.

Your HEAD, the .orig, and the .orig plus debian/, are all different.
But the .gitignores (outside debian/) in all of these trees are
identical.

 |  dgit: --quilt=gbp specified, implying patches-unapplied git tree
 |  dgit:  but git tree differs from orig in upstream files.

--quilt=gbp expects to be given a gbp interchange branch, which (as
far as upstream files goes) is patches-unapplied except that it might
contain uncommitted .gitignore changes.

However, your HEAD differs from your .orig in other ways.

git-diff HEAD d510ca798480f37fc567 will show you the differences from
the upstream tarball.

git-diff HEAD 5c8951c97cef58952a93 will show you the differences from
upstream + your debian/.  That should be empty apart from .gitignore.

> But the clash between the upstream gitignore and the debian one breaks dgit.

This is supposed to be handled by --quilt=gbp.

Ian.

-- 
Ian Jackson <ijack...@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.



Bug#842614: Bug#842608: dgit pull should bail out in splitbrain mode

2017-06-21 Thread Felipe Sateler
On Jun 21, 2017 08:03, "Sean Whitton"  wrote:

Hello Felipe,

On Tue, Jun 20, 2017 at 09:30:44PM -0400, Felipe Sateler wrote:
> Currently dgit is not really usable with gbp -managed repositories, as
> many will have a .gitignore file ignoring the .pc dir.

Note that dgit does not commit the .pc dir to git, so this should work
fine.


But the clash between the upstream gitignore and the debian one breaks dgit.

Or at least that's what I think it happened when I tried to use dgit. As I
said in my earlier message, the dgit output is unparseable for me :(

Saludos,
Felipe Sateler


Bug#842614: Bug#842608: dgit pull should bail out in splitbrain mode

2017-06-21 Thread Sean Whitton
Hello Felipe,

On Tue, Jun 20, 2017 at 09:30:44PM -0400, Felipe Sateler wrote:
> Currently dgit is not really usable with gbp -managed repositories, as
> many will have a .gitignore file ignoring the .pc dir.

Note that dgit does not commit the .pc dir to git, so this should work
fine.

-- 
Sean Whitton


signature.asc
Description: PGP signature


Bug#842614: Bug#842608: dgit pull should bail out in splitbrain mode

2017-06-20 Thread Felipe Sateler
gitOn Sun, 30 Oct 2016 20:09:24 + Ian Jackson <
ijack...@chiark.greenend.org.uk> wrote:
> Control: clone -1 -2
> Control: retitle -2 dgit pull should do "the right thing" in split brain
mode
> Control: severity -2 wishlist
>
> In split brain mode, dgit pull should merge the right bits.
>
> For example, with --gbp, it should merge debian/patches, and any
> upstream .gitignores, and leave the rest of the tree alone.

Indeed. While at it, the error message could be improved. This is
unparseable:

dgit: split brain (separate dgit view) may be needed (--quilt=gbp).
dgit: base trees orig=d510ca798480f37fc567 o+d/p=5c8951c97cef58952a93
dgit: quilt differences: src:  ## orig ## gitignores:  == orig ==
dgit: quilt differences:  HEAD ## o+d/p   HEAD == o+d/p
dgit: --quilt=gbp specified, implying patches-unapplied git tree
dgit:  but git tree differs from orig in upstream files.


Currently dgit is not really usable with gbp -managed repositories, as many
will have a .gitignore file ignoring the .pc dir.


Saludos


Bug#842608: dgit pull should bail out in splitbrain mode

2016-10-30 Thread Ian Jackson
Control: clone -1 -2
Control: retitle -2 dgit pull should do "the right thing" in split brain mode
Control: severity -2 wishlist

In split brain mode, dgit pull should merge the right bits.

For example, with --gbp, it should merge debian/patches, and any
upstream .gitignores, and leave the rest of the tree alone.

Ian.

-- 
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.



Bug#842608: dgit pull should bail out in splitbrain mode

2016-10-30 Thread Sean Whitton
Package: dgit
Version: 2.8
Severity: normal

Since all the other dgit commands work in splitbrain mode if you pass
(e.g.) --gbp, a user might expect dgit pull to DTRT.

Since it won't, it should exit with an error in splitbrain mode.

-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (900, 'testing')
Architecture: i386 (i686)

Kernel: Linux 4.5.0-2-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages dgit depends on:
ii  ca-certificates   20160104
ii  coreutils 8.25-2
ii  curl  7.50.1-1
ii  devscripts2.16.8
ii  dpkg-dev  1.18.10
ii  dput  0.10.3
ii  git [git-core]1:2.9.3-1
ii  git-buildpackage  0.8.6
ii  libdpkg-perl  1.18.10
ii  libjson-perl  2.90-1
ii  liblist-moreutils-perl0.416-1+b1
ii  libperl5.24 [libdigest-sha-perl]  5.24.1~rc3-3
ii  libtext-iconv-perl1.7-5+b4
ii  libwww-perl   6.15-1
ii  perl  5.24.1~rc3-3

Versions of packages dgit recommends:
ii  openssh-client [ssh-client]  1:7.3p1-1

Versions of packages dgit suggests:
ii  sbuild  0.71.0-2

-- no debconf information

-- 
Sean Whitton


signature.asc
Description: PGP signature