1
0
Fork 0

Don't chdir() while cloning git repos

pull/1/head
Jordi Boggiano 2011-06-06 11:00:05 +02:00
parent 14fdd4384a
commit 1eb2a46308
1 changed files with 2 additions and 5 deletions

View File

@ -28,7 +28,6 @@ class GitDownloader
public function download(PackageInterface $package, $path)
{
$oldDir = getcwd();
if (!is_dir($path)) {
if (file_exists($path)) {
throw new \UnexpectedValueException($path.' exists and is not a directory.');
@ -37,12 +36,10 @@ class GitDownloader
throw new \UnexpectedValueException($path.' does not exist and could not be created.');
}
}
chdir($path);
if ($this->clone) {
exec('git clone '.escapeshellarg($package->getSourceUrl()).' -b master '.escapeshellarg($package->getName()));
system('git clone '.escapeshellarg($package->getSourceUrl()).' -b master '.escapeshellarg($path.'/'.$package->getName()));
} else {
exec('git archive --format=tar --prefix='.escapeshellarg($package->getName()).' --remote='.escapeshellarg($package->getSourceUrl()).' master | tar -xf -');
system('git archive --format=tar --prefix='.escapeshellarg($package->getName()).' --remote='.escapeshellarg($package->getSourceUrl()).' master | tar -xf -');
}
chdir($oldDir);
}
}