[haiku-development] Re: New way to access subversion for developers

  • From: "Michael Lotz" <mmlr@xxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sat, 14 Jun 2008 15:00:21 +0200

Hi there

> While we are on topic, I'd like to understand if everybody think that
> staying with a centralized version control system instead of a 
> decentralized
> like git or mercurial is still a good idea?

We were not really on topic of switching SCMs. But it was just so 
obvious that this would come up again.

Personally I vote in favor of SVN for the simple reason that it uses a 
human readable format. There is one revision that has one unique 
identifying number that can easily be interpreted. I have my working 
copy at r25941 and everyone having r25941 has the same (except for 
local changes obviously). This is just way easier to grasp than having 
"commit c82a22c39cbc32576f64f5c6b3f24b99ea8149c7" or "changeset: 
4:b57f9a090b62". As I understand it with mercurial you can just ignore 
the changeset identifier though and I wouldn't know about git. I don't 
understand why you would want to tag your changesets individually with 
a non human readable number, when you could simply associate one 
revision with one changeset as SVN does.

For me the SCM is just a tool. I don't want to mess with the SCM, I 
want to mess with the source. It has to manage keeping a repository 
that I can get changes from and where I can put changes into and where 
I can most easily identify a point in time and what lead to it. If I 
have a bug report that tells me the user is using Haiku r25662 and 
something doesn't work, I can remember this number and do an svn log or 
look up said revision online very easily. I would _never_ want this to 
be a GUID just for the impracticallity it brings. It cannot be noted 
down as quickly and certainly you cannot simply remember it. From the 
SCMs I used, and that's basically just CVS and SVN, I find SVN 
obviously the better choice. If another SCM can get the job done as 
easily as SVN and has more advantages (like not relying on a single 
host or not requiring locking the whole tree on update) I would 
probably vote for using it. So if someone could point out for me if you 
can get the easy single revision number schema with git or mercurial 
that would be helpful. I have read about both, but I haven't yet seen 
the same simplicity as with SVN.

I have no problem with keeping SVN as our SCM, but its usablility 
obviously depends on the reliability of the hosting. So instead of just 
switching SCMs I'd first go with switching hosts to a more reliable 
service.

Regards
Michael

Other related posts: