diff options
-rwxr-xr-x | dgit | 7 | ||||
-rw-r--r-- | dgit.1 | 5 |
2 files changed, 9 insertions, 3 deletions
@@ -101,7 +101,7 @@ our %forceopts = map { $_=>0 } our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)"); our $suite_re = '[-+.0-9a-z]+'; -our $cleanmode_re = qr{(?: dpkg-source (?: -d )? (?: ,no-check )? +our $cleanmode_re = qr{(?: dpkg-source (?: -d )? (?: ,no-check | ,all-check )? | git | git-ff | check (?: ,ignores )? | none @@ -6218,7 +6218,7 @@ sub clean_tree_check_git_wd ($) { my ($message) = @_; return if $cleanmode =~ m{no-check}; return if $patches_applied_dirtily; # yuk - clean_tree_check_git 1, + clean_tree_check_git +($cleanmode !~ m{all-check}), (f_ <<END, $message); %s If this is just missing .gitignore entries, use a different clean @@ -7280,11 +7280,12 @@ sub parseopts () { } elsif (s/^-wgf$//s) { push @ropts, $&; $cleanmode = 'git-ff'; - } elsif (s/^-wd(d?)([n]?)$//s) { + } elsif (s/^-wd(d?)([na]?)$//s) { push @ropts, $&; $cleanmode = 'dpkg-source'; $cleanmode .= '-d' if $1; $cleanmode .= ',no-check' if $2 eq 'n'; + $cleanmode .= ',all-check' if $2 eq 'a'; } elsif (s/^-wc$//s) { push @ropts, $&; $cleanmode = 'check'; @@ -613,6 +613,11 @@ you will probably need --clean=dpkg-source,no-check aka -wdn. Like --clean=dpkg-source, but does not care about untracked un-ignored files. .TP +.BR --clean=dpkg-source "[" -d "]" ,all-check " | " -wda " | " -wdda +Like --clean=dpkg-source, but +fails even on ignored untracked files. +This could perhaps be used to detect bugs in your rules clean target. +.TP .BR -N " | " --new The package is or may be new in this suite. Without this, dgit will refuse to push. It may (for Debian, will) be unable to access the git |