Page MenuHomePhabricator

Support slightly prettier repository URIs in Diffusion

Authored by epriestley on Nov 13 2016, 8:02 PM.



Fixes T4245. When a repository has a short name, use /source/shortname/ as its primary URI.

Test Plan
  • Cloned Git repositories from shortnames via HTTP and SSH.
  • Cloned Mercurial repositories from shortnames via HTTP and SSH.
  • Cloned Subversion repositories from shortnames via SSH.
  • Browsed Git, Mercurial and Subversion repositories.
  • Added and removed short names to various repositories.

Diff Detail

rP Phabricator
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

epriestley updated this revision to Diff 40579.Nov 13 2016, 8:02 PM
epriestley retitled this revision from to Support slightly prettier repository URIs in Diffusion.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad accepted this revision.Nov 13 2016, 8:40 PM
chad edited edge metadata.
chad added inline comments.

This revision is now accepted and ready to land.Nov 13 2016, 8:40 PM
epriestley added inline comments.Nov 13 2016, 8:41 PM

o i c

This revision was automatically updated to reflect the committed changes.
avivey added a subscriber: avivey.Nov 14 2016, 10:17 PM

We default "short name" to a mangled version of the repository name, which is often "good enough" (looks like all repos here don't have short-name explicitly set), but we don't consider it a "short name" for this feature.

Right now, a few of my repos (The ones with the confusing names) show the /source/short-name.git, and most show /diffusion/<id>/short-name.git, which I suspect would ends up confusing for users.

We don't consider the "clone name" to be a "short name" for the purposes of this feature because it is not guaranteed to be unique (many different names mangle down to the same "clone name", and repositories are not required to have unique names in the first place).

avivey added a comment.EditedNov 14 2016, 10:36 PM

Ahh, that makes sense.
The UI is a little confusing around this though, because it refers to both "clone name" and "repository slug" as "short name" in the manage page; I'll try to break that up a bit?

Short Name: none
Clone As: yellow-fruit (Automatic clone name)
Short Name: green-tomatoes
Clone As: green-tomatoes (Short name)

Maybe just remove "Clone As" completely? e.g., only show:

Short Name: the-short-name


Short Name: None (or just don't show anything idk)