summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xdgit10
-rw-r--r--dgit.16
2 files changed, 15 insertions, 1 deletions
diff --git a/dgit b/dgit
index 98928e3..62feb30 100755
--- a/dgit
+++ b/dgit
@@ -76,7 +76,9 @@ our $tagformatfn;
our %forceopts = map { $_=>0 }
qw(unrepresentable unsupported-source-format
- dsc-changes-mismatch);
+ dsc-changes-mismatch
+ import-gitapply-absurd
+ import-gitapply-no-absurd);
our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)");
@@ -1976,9 +1978,15 @@ END
$path = "$absurdity:$path";
progress "$us: trying slow absurd-git-apply...";
rename "../../gbp-pq-output","../../gbp-pq-output.0"
+ or $!==ENOENT
or die $!;
}
eval {
+ die "forbid absurd git-apply\n" if $use_absurd
+ && forceing [qw(import-gitapply-no-absurd)];
+ die "only absurd git-apply!\n" if !$use_absurd
+ && forceing [qw(import-gitapply-absurd)];
+
local $ENV{PATH} = $path if $use_absurd;
my @showcmd = (gbp_pq, qw(import));
diff --git a/dgit.1 b/dgit.1
index f3e87fe..cc10695 100644
--- a/dgit.1
+++ b/dgit.1
@@ -744,6 +744,12 @@ dgit will probably mishandle it.
.B --force-dsc-changes-mismatch
Do not check whether .dsc and .changes match.
The archive will probably reject your upload.
+.TP
+.BR --force-import-gitapply-absurd " | " --force-import-gitapply-no-absurd
+Force on or off the use of the absurd git-apply emulation
+when running gbp pq import
+when importing a package from a .dsc.
+See Debian bug #841867.
.SH WORKFLOW - SIMPLE
It is always possible with dgit to clone or fetch a package, make
changes in git (using git-commit) on the suite branch