diff options
Diffstat (limited to 'Debian/Dgit.pm')
-rw-r--r-- | Debian/Dgit.pm | 31 |
1 files changed, 2 insertions, 29 deletions
diff --git a/Debian/Dgit.pm b/Debian/Dgit.pm index 524ae18..1977666 100644 --- a/Debian/Dgit.pm +++ b/Debian/Dgit.pm @@ -30,7 +30,6 @@ use Digest::SHA; use Data::Dumper; use IPC::Open2; use File::Path; -use File::Basename; BEGIN { use Exporter (); @@ -60,11 +59,10 @@ BEGIN { shellquote printcmd messagequote $negate_harmful_gitattrs changedir git_slurp_config_src - playtree_setup - fresh_playtree in_playtree); + playtree_setup); # implicitly uses $main::us %EXPORT_TAGS = ( policyflags => [qw(NOFFCHECK FRESHREPO NOCOMMITCHECK)] ); - @EXPORT_OK = ( qw($wa), @{ $EXPORT_TAGS{policyflags} } ); + @EXPORT_OK = @{ $EXPORT_TAGS{policyflags} }; } our @EXPORT_OK; @@ -478,31 +476,6 @@ sub playtree_setup ($) { close GA or die $!; } -our $wa; our $local_git_cfg; -sub in_playtree ($;$) { - my $sub = pop @_; # in_playtree [$twa, sub { ... };] - # default $twa is global $wa (which caller must, in that case, set) - # $twa should be relative paths of the form .git/FOO/BAR - my ($twa) = @_; - $twa //= $wa; - changedir $twa or die "$twa $!"; - my $r = eval { $sub->($twa); }; - changedir '../../..' or die "$@; $!"; - die $@ if length $@; - return $r; -} - -sub fresh_playtree (;$) { - my ($twa) = @_; - $twa //= $wa; - $local_git_cfg //= git_slurp_config_src 'local'; - my $parent = dirname $twa; - mkdir $parent or $!==EEXIST or fail "failed to mkdir $parent: $!"; - rmtree $twa; - mkdir $twa or die "$twa $!"; - in_playtree sub { playtree_setup $local_git_cfg; }; -} - 1; |