From 0065acabe8a273a32c30043fc41ee063166d29ce Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 23 Oct 2016 16:55:41 +0100 Subject: Provide --force-dsc-changes-mismatch Signed-off-by: Ian Jackson --- dgit | 14 ++++++++++++-- dgit.1 | 4 ++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/dgit b/dgit index ea14ba5..e22036b 100755 --- a/dgit +++ b/dgit @@ -75,7 +75,8 @@ our $tagformat; our $tagformatfn; our %forceopts = map { $_=>0 } - qw(unrepresentable unsupported-source-format); + qw(unrepresentable unsupported-source-format + dsc-changes-mismatch); our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)"); @@ -237,6 +238,14 @@ sub forceable_fail ($$) { print STDERR "warning: overriding problem due to --force:\n". $msg; } +sub forceing ($) { + my ($forceoptsl) = @_; + my @got = grep { $forceopts{$_} } @$forceoptsl; + return 0 unless @got; + print STDERR + "warning: skipping checks or functionality due to --force-$got[0]\n"; +} + sub no_such_package () { print STDERR "$us: package $package does not exist in suite $isuite\n"; exit 4; @@ -3291,7 +3300,8 @@ END # Check that changes and .dsc agree enough $changesfile =~ m{[^/]*$}; - files_compare_inputs($dsc, parsecontrol($changesfile,$&)); + files_compare_inputs($dsc, parsecontrol($changesfile,$&)) + unless forceing [qw(dsc-changes-mismatch)]; # Checks complete, we're going to try and go ahead: diff --git a/dgit.1 b/dgit.1 index 8178631..f3e87fe 100644 --- a/dgit.1 +++ b/dgit.1 @@ -740,6 +740,10 @@ Your build or push will probably fail later. .B --force-unsupported-source-format Carry on despite dgit not understanding your source package format. dgit will probably mishandle it. +.TP +.B --force-dsc-changes-mismatch +Do not check whether .dsc and .changes match. +The archive will probably reject your upload. .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 -- cgit v1.2.3