chiark / gitweb /
Provide --force-unrepresentable.
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 16 Oct 2016 20:02:38 +0000 (21:02 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 23 Oct 2016 16:01:38 +0000 (17:01 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
debian/changelog
dgit
dgit.1

index a283b15..34ea9d8 100644 (file)
@@ -2,6 +2,7 @@ dgit (2.7~) unstable; urgency=medium
 
   * dgit(1): Reorder the options, moving more important ones earlier.
   * dgit(1): Some more info about --deliberately.
 
   * dgit(1): Reorder the options, moving more important ones earlier.
   * dgit(1): Some more info about --deliberately.
+  * Provide --force-unrepresentable.
 
  --
 
 
  --
 
diff --git a/dgit b/dgit
index 33306da..5fa500c 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -73,7 +73,7 @@ our $tagformat_want;
 our $tagformat;
 our $tagformatfn;
 
 our $tagformat;
 our $tagformatfn;
 
-our %forceopts = map { $_=>0 } ();
+our %forceopts = map { $_=>0 } qw(unrepresentable);
 
 our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)");
 
 
 our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)");
 
@@ -4613,7 +4613,7 @@ END
     if (@unrepres) {
        print STDERR "dgit:  cannot represent change: $_->[1]: $_->[0]\n"
            foreach @unrepres;
     if (@unrepres) {
        print STDERR "dgit:  cannot represent change: $_->[1]: $_->[0]\n"
            foreach @unrepres;
-       fail <<END;
+       forceable_fail [qw(unrepresentable)], <<END;
 HEAD has changes to .orig[s] which are not representable by `3.0 (quilt)'
 END
     }
 HEAD has changes to .orig[s] which are not representable by `3.0 (quilt)'
 END
     }
diff --git a/dgit.1 b/dgit.1
index d6ac8b2..f7cbfbf 100644 (file)
--- a/dgit.1
+++ b/dgit.1
@@ -721,6 +721,21 @@ instead.  Furthermore, the specified directory will be emptied,
 removed and recreated before dgit starts, rather than removed
 after dgit finishes.  The directory specified must be an absolute
 pathname.
 removed and recreated before dgit starts, rather than removed
 after dgit finishes.  The directory specified must be an absolute
 pathname.
+.TP
+.BI --force- something
+Instructs dgit to try to proceed despite detecting
+what it thinks is going to be a fatal problem.
+.B This is probably not going to work.
+These options are provided as an escape hatch,
+in case dgit is confused.
+(They might also be useful for testing error cases.)
+.TP
+.B --force-unrepresentable
+Carry on even if
+dgit thinks that your git tree contains changes
+(relative to your .orig tarballs)
+which dpkg-source is not able to represent.
+Your build or push will probably fail later.
 .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
 .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