mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-10 08:52:39 +01:00
Make repository pull
install hooks the first time
Summary: Ref T4257. Currently, the pull logic looks like this: if (new) { create(); } else { if (hosted) { install_hooks(); } else { update(); } } This means that the first time you run `repository pull`, hooks aren't installed, which makes debugging trickier. Instead, reorganize the logic: if (new) { create(); } else { if (!hosted) { update(); } } if (hosted) { install_hooks(); } Test Plan: Ran `bin/repository pull` on a new `hg` repo and got hooks installed immediately. Reviewers: btrahan Reviewed By: btrahan CC: aran Maniphest Tasks: T4257 Differential Revision: https://secure.phabricator.com/D7818
This commit is contained in:
parent
6daa2b6c2e
commit
81dcf6378d
1 changed files with 13 additions and 16 deletions
|
@ -82,32 +82,29 @@ final class PhabricatorRepositoryPullEngine
|
|||
$this->executeSubversionCreate();
|
||||
}
|
||||
} else {
|
||||
if ($repository->isHosted()) {
|
||||
if ($is_git) {
|
||||
$this->installGitHook();
|
||||
} else if ($is_svn) {
|
||||
$this->installSubversionHook();
|
||||
} else if ($is_hg) {
|
||||
$this->installMercurialHook();
|
||||
} else {
|
||||
$this->logPull(
|
||||
pht(
|
||||
"Repository '%s' is hosted, so Phabricator does not pull ".
|
||||
"updates for it.",
|
||||
$callsign));
|
||||
}
|
||||
} else {
|
||||
if (!$repository->isHosted()) {
|
||||
$this->logPull(
|
||||
pht(
|
||||
"Updating the working copy for repository '%s'.",
|
||||
$callsign));
|
||||
if ($is_git) {
|
||||
$this->executeGitUpdate();
|
||||
} else {
|
||||
} else if ($is_hg) {
|
||||
$this->executeMercurialUpdate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($repository->isHosted()) {
|
||||
if ($is_git) {
|
||||
$this->installGitHook();
|
||||
} else if ($is_svn) {
|
||||
$this->installSubversionHook();
|
||||
} else if ($is_hg) {
|
||||
$this->installMercurialHook();
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Exception $ex) {
|
||||
$this->abortPull(
|
||||
pht('Pull of "%s" failed: %s', $callsign, $ex->getMessage()),
|
||||
|
|
Loading…
Reference in a new issue