From: Ian Jackson Date: Sun, 26 Jul 2015 21:20:24 +0000 (+0100) Subject: Break out remove_stray_gits X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=fd5a8be9fa6e53cfb5c9164a1022c7d5d8ce4a35;hp=d3f4f3e6caf677bfbb98440bc0977dd87c8427d0;p=dgit.git Break out remove_stray_gits --- diff --git a/dgit b/dgit index 109f79c7..31b08d3e 100755 --- a/dgit +++ b/dgit @@ -1139,14 +1139,7 @@ sub git_write_tree () { return $tree; } -sub mktree_in_ud_from_only_subdir () { - # changes into the subdir - my (@dirs) = <*/.>; - die unless @dirs==1; - $dirs[0] =~ m#^([^/]+)/\.$# or die; - my $dir = $1; - changedir $dir; - +sub remove_stray_gits () { my @gitscmd = qw(find -name .git -prune -print0); debugcmd "|",@gitscmd; open GITS, "-|", @gitscmd or failedcmd @gitscmd; @@ -1160,7 +1153,17 @@ sub mktree_in_ud_from_only_subdir () { } } $!=0; $?=0; close GITS or failedcmd @gitscmd; +} + +sub mktree_in_ud_from_only_subdir () { + # changes into the subdir + my (@dirs) = <*/.>; + die unless @dirs==1; + $dirs[0] =~ m#^([^/]+)/\.$# or die; + my $dir = $1; + changedir $dir; + remove_stray_gits(); mktree_in_ud_here(); my $format=get_source_format(); if (madformat($format)) {