X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=git-mv.perl;h=83dc7e45cf205c7575512182bf29516914773209;hb=d5a6aafc90a14382120727e4e81ee1a380e8b194;hp=65b1dcfdf2314e2eb8b7bfd1124210ad73269b10;hpb=26169747b811b8ecd5693adfce4f5c7e322d2487;p=git.git diff --git a/git-mv.perl b/git-mv.perl index 65b1dcfd..83dc7e45 100755 --- a/git-mv.perl +++ b/git-mv.perl @@ -19,15 +19,9 @@ EOT exit(1); } -# Sanity checks: -my $GIT_DIR = $ENV{'GIT_DIR'} || ".git"; - -unless ( -d $GIT_DIR && -d $GIT_DIR . "/objects" && - -d $GIT_DIR . "/objects/" && -d $GIT_DIR . "/refs") { - print "Error: git repository not found."; - exit(1); -} - +my $GIT_DIR = `git rev-parse --git-dir`; +exit 1 if $?; # rev-parse would have given "not a git dir" message. +chomp($GIT_DIR); our ($opt_n, $opt_f, $opt_h, $opt_k, $opt_v); getopts("hnfkv") || usage; @@ -68,7 +62,7 @@ my $safesrc; my (%overwritten, %srcForDst); $/ = "\0"; -open(F,"-|","git-ls-files","-z") +open(F, 'git-ls-files -z |') or die "Failed to open pipe from git-ls-files: " . $!; @allfiles = map { chomp; $_; } ; @@ -108,7 +102,7 @@ while(scalar @srcArgs > 0) { } } - if (($bad eq "") && ($dst =~ /^$src\//)) { + if (($bad eq "") && ($dst =~ /^$safesrc\//)) { $bad = "can not move directory '$src' into itself"; }