Jordi Boggiano 13 anni fa
parent
commit
269537e466

+ 2 - 2
src/Composer/Downloader/GitDownloader.php

@@ -119,8 +119,8 @@ class GitDownloader extends VcsDownloader
         // set push url for github projects
         if (preg_match('{^(?:https?|git)://github.com/([^/]+)/([^/]+?)(?:\.git)?$}', $package->getSourceUrl(), $match)) {
             $pushUrl = 'git@github.com:'.$match[1].'/'.$match[2].'.git';
-            $cmd = sprintf('git remote set-url --push origin %s', escapeshellarg($pushUrl));
-            $this->process->execute($cmd, $ignoredOutput, $path);
+            $cmd = sprintf('cd %s && git remote set-url --push origin %s', escapeshellarg($path), escapeshellarg($pushUrl));
+            $this->process->execute($cmd, $ignoredOutput);
         }
     }
 }

+ 1 - 1
tests/Composer/Test/Downloader/GitDownloaderTest.php

@@ -89,7 +89,7 @@ class GitDownloaderTest extends \PHPUnit_Framework_TestCase
             ->with($this->equalTo($expectedGitCommand))
             ->will($this->returnValue(0));
 
-        $expectedGitCommand = $this->getCmd("git remote set-url --push origin 'git@github.com:composer/composer.git'");
+        $expectedGitCommand = $this->getCmd("cd 'composerPath' && git remote set-url --push origin 'git@github.com:composer/composer.git'");
         $processExecutor->expects($this->at(3))
             ->method('execute')
             ->with($this->equalTo($expectedGitCommand))