views:

1020

answers:

9

So I want to get a project on a distributed version control system, such as mercurial, git, or bazaar. The catch is that I need the Windows support to be good, i.e. no instructions that start off with "install cygwin...". Now I've heard that git's Windows support is decent these days, but don't have any first hand experience. Also, it sounds like the bazaar team has an explicit goal of making it as multiplatform as possible. Can I get any recommendations?

+1  A: 

EDIT: Perhaps add a "dvcs", "distrubutedversioncontrol", "distrubuted"

I've used Mercurial on Windows with no problems. You can use TortoiseHG or just use the command line. Mercurial does require Python, but that is easy to install in Windows as well.

Mercurial Binary Packages

basszero
Last I checked, TortoiseHG doesn't support 64-bit Windows. Has this been corrected?
Joel Mueller
+4  A: 

I use msys-git on windows every single day. Works fast and flawlessly.

Although the newer build has some problems with git-svn, this build (Git-1.5.5-preview20080413.exe) has a working git-svn.

Jon Works
+4  A: 

There's a nice comparison between git, hg and bzr in this InfoQ article. They all have their strengths and weaknesses. You'll have to think about your project and your workflows and choose the best fit. The good news is that they're all fairly good.

Pat Notz
A: 

I agree with basszero. I'm using mercurial under windows and it's as easy and reliable as it can get. My development team is spread over Europe (well Dublin and Vienna :-). We use VPN to commit or sometime the built in webserver (hgserve). Both work fine with no problems out of the box.

Also diff3 open source tool works perfect with mercurial and TortoiseHG out of the box.

Johannes
+3  A: 

I've had the best luck with Bazaar, followed by Mercurial. Never could get Git to work correctly. A quick search shows that Git still requires clunky emulation layers like Cygwin/MSYS, and I can't find any integration tools like TortoiseBzr for Git.

With Mercurial in Windows, I had several minor issues (insensitive paths, symlinks, ). They were usually fixed eventually, but I felt that the same quality of testing was not applied to running on Windows as for the other platforms. Bazaar also had better documentation for integrating with native applications like Visual C.

John Millikin
A: 

In my experience using GIT on windows is a major pain. But I have been using Fossil SCM for some time now, and I think it actually fits your needs exactly.

It also has a built in Ticket system and a Wiki. And the whole program is contained in 1 file and it works right out of the box.

I totally recommend it.

Here is a link to the site http://www.fossil-scm.org/

Remember, this site is self hosting, what that means is you are looking at the web interface to fossil it self, when you look at tickets and the wiki and documentation, you actually are using fossil.

But if your project has millions of lines of code and is a few gigabytes in size, you have to use GIT, there is no way around that problem.

Enjoy.

Trausti Thor Johannsson
+1  A: 

If you are concerned about an easy to use interface:

The bazaar folk now include TortoiseBzr in their windows binary package. That's got to be a pretty strong indicator that they think it is up to snuff. I don't know what the maturity/stability of TortoiseHg is, but there certainly isn't a decent GUI interface for git yet, and the MSYS git build still needs some work IMO.

If your team are comfortable with or prefer the command line, then either bazaar or mercurial would probably work well for you, and are both probably about the same in terms of learning curve. Git's learning curve is much higher. It is like the swiss-army knife that is almost wider than it is long, with all the little gadgets and do-dads in it and hanging off it, with the springs so tight that you occasionally slice a finger open trying to prise a blade out.

Evan
+3  A: 

At last I checked, the only thing you need for Mercurial is Python and to grab a binary package. If you find yourself with more time and want to fiddle / build it yourself, look here.

The only real drawback with HG is its idea of branching .. but for some people that's a major plus.

I like it because its intuitive, easy to install and works on anything that Python does. I don't think that all of the available plugins will work for you, but most should.

Tim Post