Page 1 of 1

Moving to another VCS?

Posted: Tue Oct 13, 2009 7:53 am
by elcugo

Moving the ToME source code to another VCS had been proposed several times now, and I would like to know what are you thoughts about it.

There's no guarantee that moving to a "better" version control system is going to attract more contributors, but it might help lower the barrier to entry a little bit, and lowering the barrier is a good thing.

Anyway, what do you think?

Posted: Tue Oct 13, 2009 8:39 am
by Xandor Tik'Roth
What all is involved in moving the source code over to another VCS?

Posted: Tue Oct 13, 2009 8:11 pm
by AnonymousHero
My opinion is (of course): Yes, please!

Regarding what is involved in moving: It depends a bit on which VCS one is moving to, but for an Open Source-ish project like ToME it shouldn't be a problem to get free and professional hosting which ever VCS gets picked in the end. Most hosting facilities provide a means of importing a CVS repository.

Regarding hosting, there's and for Git and there's Launchpad for Bazaar.

On the choice of VCS, I'd vote for Bazaar. It's extremely easy to use and it's very hard to shoot yourself in the foot (as opposed to Git). I actually use git at home because it's slightly more powerful than Bazaar, but for people who aren't prepared to invest a lot into understanding the VCS at a deep level, I'd definitely recommend Bazaar. I'd be using it on Linux, but since we're using Bazaar at work (on Windows machines, blech!) I happen to know that it's also very well supported on Windows -- the recent 2.0 release also has a very useful little GUI which integrates with Explorer (modeled on TortoiseSVN).

The hosting at Launchpad is excellent and full-featured. To check some of the facilities, you might try browsing around the Bazaar repository on Launchpad here: Bazaar Version Control System in Launchpad. They even have shiny graphics showing the branching structure :). Launchpad can essentially function as the "hub" where changes from other people are reviewed and approved (or rejected) and merged into the official version of ToME. I haven't used Launchpad very much, but I believe you can also set up a "trusted group" of developers who are allowed to review and merge changes from others, so that you're not dependent on a single person always being available. To me, this is the single most critical thing about changing in the first place.

Posted: Wed Oct 14, 2009 2:05 am
by elcugo
Personally I like Mercurial better, and for Mercurial hosting there's Bitbucket or Sharesource.

But yeah, I agree with everything AnonymousHero and I think the move could be done in under a week.

But since we have a srious lack of developers right now, I wonder if it's worth it? Any other developer out there?

Posted: Wed Oct 14, 2009 4:12 am
by Xandor Tik'Roth
Anonymous Hero: A lot of what you said still doesn't make sense. I'm assuming the stuff you're talking about is the storage stuff for the new ToME development. What does it cost, what does it involve on our end, do you need anything from me and how quickly can it be done?

Elcugo: I believe that people can be found to work on this if the forums are brought back from the dead as it were. Go ahead and do whatever is necessary to make this happen and, God willing, the developers will come.

Posted: Wed Oct 14, 2009 4:57 pm
by AnonymousHero
Xandor wrote:Anonymous Hero: A lot of what you said still doesn't make sense. I'm assuming the stuff you're talking about is the storage stuff for the new ToME development. What does it cost, what does it involve on our end, do you need anything from me and how quickly can it be done?
I'm afraid a lot of the technical stuff isn't going to make much sense to someone who isn't a coder -- you could try looking at the Wikipedia page to see if that helps.

Hosting for free projects (GPL, BSD, APL etc. licenses) tends to be free for free projects on all the hosting solutions that we've mentioned. Launchpad is certainly free for free projects. (I'm not sure "how free" they have to be -- I'm guessing that ToME's license is acceptable.)

Importing the ToME CVS code into Launchpad could be done in a day -- I'm guessing that it's mostly just a question af asking the Lauchpad guys to do it. I'd be happy to do the asking if necessary. I'm pretty sure I'd basically just need a .zip or a .tar.gz of the entire CVS repository to give to the Launchpad people.

@Elcugo: I'm not sure what the facilities of those hosting solutions are -- any chance you could do a quick comparison? My main concern is the ability for the hosting platform to work as an automated "merge manager" so that people can propose feature branches and some group of "approved" developers can review/approve/reject/etc. Having an automated system to manage this is incredibly helpful in my experience.

Also, what is the state of the Hg (Mercurial) support for Windows? Do they have a usable TortoiseSVN-alike? Last time I looked (about 6-10 months ago) it wasn't very usable. I'm not going to be using Windows, so it doesn't really matter to me, but it might if we want people on Windows to be able to work with $VCS in a sensible manner.

Btw, one thing which I think also massively favors Bazaar is that there is active and constant development. Last time I looked Mercurial development was going pretty slowly -- this may just be because it's already perfect, but it has me slightly worried. Bazaar is also being developed by a pretty big corporation, Canonical, which is using it to manage the Ubuntu linux distribution. I view that as good insurance. Is Mercurial used for any big projects?

Posted: Wed Oct 14, 2009 5:20 pm
by overtrix
Mozilla a high-profile example adopting Hg - was close choice between that and Bazaar - they do note a lot of ready assistance from the latter while trying to decide, which in fairness might be a big plus :)

Posted: Wed Oct 14, 2009 6:41 pm
by elcugo
IIRC Java and OpenBravo are also Mercurial users, here's a list of projects using mercurial: ... gMercurial

Sharesource is a sourceforge clone, but it has a much nicer user interface. Bitbucket is a github clone and has similar features.

The conversion can be made by me, actually I have a HG version of the Tome repository somewhere in my hard disk, so the only thing we need to do is to upload it somewhere and see if it suits our needs and I think i'm going to do just that today.

As a note of trivia, I started using Mercurial thanks to Sigsegv, the guy who caused the release of 2.3.5.

Posted: Thu Oct 15, 2009 12:26 am
by Xandor Tik'Roth
Oh. This is replacing the thing that ToME is compiled in? I know that a lot of you guys are facepalming right now, but I seriously have no idea what this is. My specialty is building computers and compiling systems, not programming.

It looks like this is really down to a fight between Hg and Launchpad. Someone take a comparison between the two for compatability, user-friendliness and power and make a decision about it.

Once that decision is made, what do you guys need from me?

Posted: Thu Oct 15, 2009 7:07 pm
by elcugo
No, we still want ToME to be multicompiler, thought gcc is used in most platforms.

We are talking about the system that handles the source code, have you used Word's revision control? Or the Wiki's Recent changes feature? That, but for Source code.

This is not a competition but a discussion about Mercurial (hg) vs Bazaar (bzr) vs Git. But in the end I will choose whatever the rest of the developers are familiar with. Technical merits are not that important, but if you want there's plenty of comparison charts everywhere in the net.

From you we'll need an official announcement when the change is ready.

Posted: Fri Oct 16, 2009 3:09 am
by Xandor Tik'Roth
Ooohhh... That makes an amazing amount of sense now.

Alright, I'll keep track of this thread. Just let me know what you guys decide.

Posted: Mon Oct 19, 2009 5:53 pm
by shani
The mercurial option sounds very good, because of the future promise of HGsubversion, which sounds fine to me as a SVN fanboy.

Re: Moving to another VCS?

Posted: Fri Nov 13, 2009 10:27 am
by AnonymousHero
There don't seem to be any particularly strong opinions either way, so would you do the honors, elcugo?

If you don't feel like being the "final arbiter", you could always flip a coin. The important thing is to get things moving :).

Btw, just out of curiousity: Have you worked (in a non-trivial sense) with Bazaar? I haven't worked with Hg beyond the little testing I did for my employer, so I find it hard to judge its merits.

Re: Moving to another VCS?

Posted: Fri Nov 13, 2009 7:38 pm
by elcugo
Nope, I haven't used Bazaar at all, but I have used Git and Mercurial a lot, mainly for my own projects.

Meanwhile, I have just completed the ocnversion of the T-Engine and ToME CVS modules a few minutes ago (*aarrgg* hours). I will post the links in a new thread. I chose Mercurial, mainly because that's what I'm more familiar with and because It's IMHO the one that has the best speed/features/ease of use ratio.

Re: Moving to another VCS?

Posted: Fri Nov 13, 2009 11:04 pm
by AnonymousHero
Cool, thanks. I've cloned the repos and I'll probably play around with a few things to see if I can a character going.