diff options
Diffstat (limited to 'dgit')
-rwxr-xr-x | dgit | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -976,6 +976,12 @@ sub prep_ud () { mkdir $ud or die $!; } +sub mktree_in_ud_here () { + runcmd qw(git init -q); + rmtree('.git/objects'); + symlink '../../../../objects','.git/objects' or die $!; +} + sub mktree_in_ud_from_only_subdir () { # changes into the subdir my (@dirs) = <*/.>; @@ -984,10 +990,7 @@ sub mktree_in_ud_from_only_subdir () { my $dir = $1; changedir $dir; fail "source package contains .git directory" if stat_exists '.git'; - die $! unless $!==&ENOENT; - runcmd qw(git init -q); - rmtree('.git/objects'); - symlink '../../../../objects','.git/objects' or die $!; + mktree_in_ud_here(); runcmd @git, qw(add -Af); my $tree = cmdoutput @git, qw(write-tree); $tree =~ m/^\w+$/ or die "$tree ?"; |