Page MenuHomePhabricator

D8090.diff
No OneTemporary

D8090.diff

diff --git a/src/applications/diffusion/conduit/ConduitAPI_diffusion_branchquery_Method.php b/src/applications/diffusion/conduit/ConduitAPI_diffusion_branchquery_Method.php
--- a/src/applications/diffusion/conduit/ConduitAPI_diffusion_branchquery_Method.php
+++ b/src/applications/diffusion/conduit/ConduitAPI_diffusion_branchquery_Method.php
@@ -100,7 +100,7 @@
return $this->processBranchRefs($request, $refs);
}
- protected function getSVNResult() {
+ protected function getSVNResult(ConduitAPIRequest $request) {
// Since SVN doesn't have meaningful branches, just return nothing for all
// queries.
return array();
diff --git a/src/applications/diffusion/controller/DiffusionRepositoryController.php b/src/applications/diffusion/controller/DiffusionRepositoryController.php
--- a/src/applications/diffusion/controller/DiffusionRepositoryController.php
+++ b/src/applications/diffusion/controller/DiffusionRepositoryController.php
@@ -183,8 +183,10 @@
$uri = new PhutilURI(PhabricatorEnv::getProductionURI($repo_path));
if ($repository->isSVN()) {
+ $label = pht('Checkout (SSH)');
$uri->setProtocol('svn+ssh');
} else {
+ $label = pht('Clone (SSH)');
$uri->setProtocol('ssh');
}
@@ -196,11 +198,12 @@
$uri->setPort(PhabricatorEnv::getEnvConfig('diffusion.ssh-port'));
$clone_uri = $this->renderCloneURI(
+ $repository,
$uri,
$serve_ssh,
'/settings/panel/ssh/');
- $view->addProperty(pht('Clone URI (SSH)'), $clone_uri);
+ $view->addProperty(pht('Checkout (SSH)'), $clone_uri);
}
$serve_http = $repository->getServeOverHTTP();
@@ -208,12 +211,19 @@
$http_uri = PhabricatorEnv::getProductionURI($repo_path);
$clone_uri = $this->renderCloneURI(
+ $repository,
$http_uri,
$serve_http,
PhabricatorEnv::getEnvConfig('diffusion.allow-http-auth')
? '/settings/panel/vcspassword/'
: null);
+ if ($repository->isSVN()) {
+ $label = pht('Checkout (HTTP)');
+ } else {
+ $label = pht('Clone (HTTP)');
+ }
+
$view->addProperty(pht('Clone URI (HTTP)'), $clone_uri);
}
} else {
@@ -221,14 +231,16 @@
case PhabricatorRepositoryType::REPOSITORY_TYPE_GIT:
case PhabricatorRepositoryType::REPOSITORY_TYPE_MERCURIAL:
$view->addProperty(
- pht('Clone URI'),
+ pht('Clone'),
$this->renderCloneURI(
+ $repository,
$repository->getPublicRemoteURI()));
break;
case PhabricatorRepositoryType::REPOSITORY_TYPE_SVN:
$view->addProperty(
- pht('Repository Root'),
+ pht('Checkout'),
$this->renderCloneURI(
+ $repository,
$repository->getPublicRemoteURI()));
break;
}
@@ -548,6 +560,7 @@
}
private function renderCloneURI(
+ PhabricatorRepository $repository,
$uri,
$serve_mode = null,
$manage_uri = null) {
@@ -556,11 +569,23 @@
Javelin::initBehavior('select-on-click');
+ switch ($repository->getVersionControlSystem()) {
+ case PhabricatorRepositoryType::REPOSITORY_TYPE_GIT:
+ $command = csprintf('git clone %s %s', $uri, $repository->getName());
+ break;
+ case PhabricatorRepositoryType::REPOSITORY_TYPE_MERCURIAL:
+ $command = csprintf('hg clone %s %s', $uri, $repository->getName());
+ break;
+ case PhabricatorRepositoryType::REPOSITORY_TYPE_SVN:
+ $command = csprintf('svn checkout %s %s', $uri, $repository->getName());
+ break;
+ }
+
$input = javelin_tag(
'input',
array(
'type' => 'text',
- 'value' => (string)$uri,
+ 'value' => (string)$command,
'class' => 'diffusion-clone-uri',
'sigil' => 'select-on-click',
'readonly' => 'true',

File Metadata

Mime Type
text/plain
Expires
Wed, Apr 2, 7:52 AM (3 w, 2 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7226874
Default Alt Text
D8090.diff (3 KB)

Event Timeline