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/Exist...
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/#repositor...
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,