diff options
-rw-r--r-- | debian/changelog | 2 | ||||
-rwxr-xr-x | dgit | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog index f836390..5dc6258 100644 --- a/debian/changelog +++ b/debian/changelog @@ -47,6 +47,8 @@ dgit (1.5~~) unstable; urgency=medium * Better error message if non-split-brain patch stack no longer applies (due to new upstream version, or user messing with it). Closes:#833025. + * Better error message if HEAD contains changes unrepresentable + by `3.0 (quilt)'. Closes:#834618. Infrastructure: * Better error handling in dgit-repos-policy-debian. @@ -4522,11 +4522,13 @@ END # be. This is mostly for error reporting. my %editedignores; + my @unrepres; my $diffbits = { # H = user's HEAD # O = orig, without patches applied # A = "applied", ie orig with H's debian/patches applied - O2H => quiltify_trees_differ($unapplied,$headref, 1,\%editedignores), + O2H => quiltify_trees_differ($unapplied,$headref, 1, + \%editedignores, \@unrepres), H2A => quiltify_trees_differ($headref, $oldtiptree,1), O2A => quiltify_trees_differ($unapplied,$oldtiptree,1), }; @@ -4548,6 +4550,14 @@ END $dl[0], $dl[1], $dl[3], $dl[4], $dl[2], $dl[5]; + if (@unrepres) { + print STDERR "dgit: cannot represent change: $_->[1]: $_->[0]\n" + foreach @unrepres; + fail <<END; +HEAD has changes to .orig[s] which are not representable by `3.0 (quilt)' +END + } + my @failsuggestion; if (!($diffbits->{O2H} & $diffbits->{O2A})) { push @failsuggestion, "This might be a patches-unapplied branch."; |