On Sat, 14 May 2011 07:40:52 +0200 Niels Sascha Reedijk <niels.reedijk@xxxxxxxxx> wrote: > In a similar fanboyism I would like to point out that the number in no > sense represents an SVN revision number. It does not even point to a > fixed revision. In that sense a date is much more meaningful, because > it at least adds some temporality. > > Explanation (letters refer to a changeset): > > a - b - c - d - h > \ e - f - g / > > Now I invite you to tell me whether haiku/master-4-g1234567 refers to > changeset 'd' or 'f'. Unless one branches off of a changeset that is not part of what I defined as the main line (i.e. a former head/tip) -- which I suppose will virtually never happen in practice -- you can't tell from looking at the graph what changeset that descriptor refers to, but it still does have the direct comparability property (i.e. "haiku/master-3-g1234567" was committed earlier). Also, if we stored the complete main line mapping -- e.g. in an annotated tag (in git) -- it would even be possible to resolve a hashless "haiku/master-4" to the correct changeset. Even if the main line mapping is not stored in the repository itself, we could at least do that on the server and allow revision shorthands in Trac. E.g. r4 would uniquely refer to that revision. Of course, for other branches the branch name would needed to be included. I like where this solution is headed. Something unrelated: What are we going to do with vendor branches? CU, Ingo