//VersionControl_Git wants an existing dir, git clone not
\rmdir($new->gitDir);
- $vc->getCommand('clone')
+ $cmd = $vc->getCommand('clone')
//this should be setOption, but it fails with a = between name and value
->addArgument('--separate-git-dir')
->addArgument(
$GLOBALS['phorkie']['cfg']['gitdir'] . '/' . $new->id . '.git'
)
->addArgument($pathOrUrl)
- ->addArgument($new->workDir)
- ->execute();
- foreach (\glob($new->gitDir . '/hooks/*') as $hookfile) {
- \unlink($hookfile);
+ ->addArgument($new->workDir);
+ try {
+ $cmd->execute();
+ } catch (\Exception $e) {
+ //clean up, we've got no workdir otherwise
+ $new->delete();
+ throw $e;
}
+ $rs = new Repository_Setup($new);
+ $rs->afterInit();
+
return $new;
}