From: Gerrit Pape Date: Sat, 3 Feb 2007 22:38:59 +0000 (+0000) Subject: git-archimport: initial import needs empty directory X-Git-Tag: v1.5.0-rc4~47 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=11dbe9e88016f3894eda79c7437f6c3bf79e155e;p=git.git git-archimport: initial import needs empty directory git-archimport should better refuse to start an initial import if the current directory is not empty. (http://bugs.debian.org/400508) Signed-off-by: Gerrit Pape Signed-off-by: Junio C Hamano --- diff --git a/git-archimport.perl b/git-archimport.perl index 2e1578124..66aaeae10 100755 --- a/git-archimport.perl +++ b/git-archimport.perl @@ -95,6 +95,15 @@ $ENV{'TMPDIR'} = $opt_t if $opt_t; # $ENV{TMPDIR} will affect tempdir() calls: my $tmp = tempdir('git-archimport-XXXXXX', TMPDIR => 1, CLEANUP => 1); $opt_v && print "+ Using $tmp as temporary directory\n"; +unless (-d $git_dir) { # initial import needs empty directory + opendir DIR, '.' or die "Unable to open current directory: $!\n"; + while (my $entry = readdir DIR) { + $entry =~ /^\.\.?$/ or + die "Initial import needs an empty current working directory.\n" + } + closedir DIR +} + my %reachable = (); # Arch repositories we can access my %unreachable = (); # Arch repositories we can't access :< my @psets = (); # the collection