From: Matthieu Moy Date: Tue, 17 Oct 2006 15:32:19 GMT Subject: Re: VCS comparison table Message-ID: In-Reply-To: <4534F133.1090003@op5.se> Andreas Ericsson writes: > This I don't understand. Let's say Alice has revision-154 in her repo, > located at alice.example.com. Let's say that commit is accessible with > the url "alice.example.com:revision-154". Bob pulls from her repo into > his own, which is located at bob.example.com. Another equation can help. Revision Identity != Revision Number. $ bzr log --show-ids ------------------------------------------------------------ revno: 1 revision-id: Matthieu.Moy@imag.fr-20061017152029-4c5a2861bcf23b7d committer: Matthieu Moy branch nick: foo timestamp: Tue 2006-10-17 17:20:29 +0200 message: some message See, bzr has this unique revision identifier (not based on a hashsum). The design choice of bzr is to hide it as much as possible from the user interface. Then, if I'm in the branch in which I typed this command, I can reffer to this revision with simply bzr whatever -r 1 In the general case, I can access it with bzr whatever -r revid:Matthieu.Moy@imag.fr-20061017152029-4c5a2861bcf23b7d (There's currently a lack in the UI to specify a remote revision-id, but that's not a problem in the model itself) bzr's internal use almost exclusively revision ID (ancestry information is all about revision id), and revno are a UI layered on top of it. I don't have strong needs in revision control, but I actually never encountered a case where I had to access a revision by providing its ID. So, for people like me, revision numbers are sufficient, and they are simple (for example, I can tell without running any command that revision 42 is older than revision 56 in a particular branch).