From 55997f200aa0471662c0b2dfec5bd4523f42dbe7 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 13 Oct 2018 11:15:57 +0100 Subject: dgit: Implement clean_tree_check for mode -wc This part of the fix for #910705. This makes -wc actually work with build_source. But per the discussion in #910705 we want to implement some checking in dpkg-source[-d] mode too. We need to teach the test suite about this notion of checking cleanlines rather than cleaning. For now we wildcard C*. Signed-off-by: Ian Jackson --- dgit | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'dgit') diff --git a/dgit b/dgit index b4943a2..7f58bc5 100755 --- a/dgit +++ b/dgit @@ -6200,7 +6200,15 @@ sub maybe_unapply_patches_again () { #----- other building ----- sub clean_tree_check () { - # Not yet implemented. The lack of this is part of #910705. + # Not yet fully implemented. + if ($cleanmode eq 'check') { + my $leftovers = cmdoutput @git, qw(clean -xdn); + if (length $leftovers) { + print STDERR $leftovers, "\n" or confess $!; + fail __ + "tree contains uncommitted files and --clean=check specified"; + } + } } sub clean_tree () { @@ -6217,12 +6225,7 @@ sub clean_tree () { } elsif ($cleanmode eq 'git-ff') { runcmd_ordryrun_local @git, qw(clean -xdff); } elsif ($cleanmode eq 'check') { - my $leftovers = cmdoutput @git, qw(clean -xdn); - if (length $leftovers) { - print STDERR $leftovers, "\n" or confess $!; - fail __ - "tree contains uncommitted files and --clean=check specified"; - } + clean_tree_check(); } elsif ($cleanmode eq 'none') { } else { die "$cleanmode ?"; -- cgit v1.2.3