Le 13/11/2014 18:16, Chad a écrit :
Please help me draft some guidelines for Phabricator
repo callsigns.
https://www.mediawiki.org/wiki/Phabricator/Callsign_naming_conventions
The subpage on naming our existing repos should be especially fun:
https://www.mediawiki.org/wiki/Phabricator/Callsign_naming_conventions/Exis…
Bikeshedding on the second hardest problem in CS? Who on this list can
pass up a chance to join in there? ;-)
Hello,
There is some more explanations about what the call signs are for at
https://secure.phabricator.com/book/phabricator/article/diffusion/#reposito…
In Gerrit a change is made unique using:
- the project name
- the targeted branch
- the Change-Id field in the commit message
With Arcanist / Diffusion it is done with:
- a prefix 'r' standing for 'revision'
- the call signs
- the 16 first chars of the commit sha1
So given a call sign MWCORE for mediawiki/core and a commit
37a6d0e60d7d86f5f078d352f0a2d01e12fedbec we would end up referring to
that commit with:
rMWCORE37a6d0e60d7d86f5
Or at least that is how I understood it. One can see why the call sign
should be short.
The upstream doc states some examples and recommends to keep them as
small as possible. From the doc:
* Facebook uses "E" for the Engineering repository, "O" for the Ops
repository, "Y" for a Yum package repository.
* Phabricator uses "P", "ARC", "PHU" for libphutil, and
"J" for
Javelin. But then they only have six repos:
https://secure.phabricator.com/diffusion/
If you look at a list of commit for the Phabricator project:
https://secure.phabricator.com/diffusion/P/history/
You can see the r<call sign><sha1> next to the Diffusion revision
number. I guess we will usually refers to either:
- the Diffusion number (D1234)
- the git sha1 that landed in the repos.
And thus could live with whatever call sign since they will barely be
used by humans.
cheers,
--
Antoine "hashar" Musso