chiark / gitweb /
In manpage move dgit.default.* to main CONFIGURATION section.
[dgit.git] / dgit
diff --git a/dgit b/dgit
index d7d27f834c4c9d349ceb2e78553c2852a239464b..83969717816bc5286d0566d2d7f1956e1085ad05 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -57,7 +57,7 @@ our $rmonerror = 1;
 our @deliberatelies;
 our %previously;
 our $existing_package = 'dpkg';
-our $cleanmode = 'dpkg-source';
+our $cleanmode;
 our $changes_since_version;
 our $quilt_mode;
 our $quilt_modes_re = 'linear|smash|auto|nofix|nocheck';
@@ -3312,6 +3312,15 @@ if (!defined $quilt_mode) {
     $quilt_mode = $1;
 }
 
+if (!defined $cleanmode) {
+    local $access_forpush;
+    $cleanmode = access_cfg('clean-mode', 'RETURN-UNDEF');
+    $cleanmode //= 'dpkg-source';
+
+    badcfg "unknown clean-mode \`$cleanmode'" unless
+       $cleanmode =~ m/^($cleanmode_re)$(?!\n)/s;
+}
+
 my $fn = ${*::}{"cmd_$cmd"};
 $fn or badusage "unknown operation $cmd";
 $fn->();