|
@@ -42,10 +42,12 @@ class GitDownloader extends VcsDownloader implements DvcsDownloaderInterface
|
|
|
{
|
|
|
GitUtil::cleanEnv();
|
|
|
$path = $this->normalizePath($path);
|
|
|
+ $cachePath = $this->config->get('cache-vcs-dir').'/'.preg_replace('{[^a-z0-9.]}i', '-', $url).'/';
|
|
|
+ $cacheOptions = file_exists($cachePath) ? $cacheOptions = '--reference '.$cachePath.' ' : '';
|
|
|
|
|
|
$ref = $package->getSourceReference();
|
|
|
$flag = Platform::isWindows() ? '/D ' : '';
|
|
|
- $command = 'git clone --no-checkout %s %s && cd '.$flag.'%2$s && git remote add composer %1$s && git fetch composer';
|
|
|
+ $command = 'git clone --no-checkout %s %s '.$cacheOptions.'&& cd '.$flag.'%2$s && git remote add composer %1$s && git fetch composer';
|
|
|
$this->io->writeError(" Cloning ".$ref);
|
|
|
|
|
|
$commandCallable = function ($url) use ($ref, $path, $command) {
|