diff options
Diffstat (limited to 'dgit')
-rwxr-xr-x | dgit | 19 |
1 files changed, 12 insertions, 7 deletions
@@ -6203,20 +6203,25 @@ sub maybe_unapply_patches_again () { #----- other building ----- +sub clean_tree_check_git ($$) { + my ($honour_ignores, $message) = @_; + my @cmd = (@git, qw(clean -dn)); + push @cmd, qw(-x) unless $honour_ignores; + my $leftovers = cmdoutput @cmd; + if (length $leftovers) { + print STDERR $leftovers, "\n" or confess $!; + fail $message; + } +} + sub clean_tree_check () { # Not yet fully implemented. # This function needs to not care about modified but tracked files. # That was done by check_not_dirty, and by now we may have run # the rules clean target which might modify tracked files (!) if ($cleanmode =~ m{^check}) { - my @cmd = (@git, qw(clean -dn)); - push @cmd, qw(-x) unless $cleanmode =~ m{ignores}; - my $leftovers = cmdoutput @cmd; - if (length $leftovers) { - print STDERR $leftovers, "\n" or confess $!; - fail __ + clean_tree_check_git +($cleanmode =~ m{ignores}), __ "tree contains uncommitted files and --clean=check specified"; - } } } |