Github has won
jmoiron.net
jmoiron.net
This is an odd statement, which deserves more explanation. DVCSs have won in the arena of early-adopter programmers who actually care about these things enough to read them, but I'd guess that the number of SVN users still trumps the number of git/hg users by several orders of magnitude. Moreover, I'd guess that the number of programmer who have heard about git/hg is incredibly small as well (compared to SVN or other systems.)
By the way, hg has definitely won me. I use it with an online project management and hosting service called Codebasehq.com, which I recommend any time this comes up - I really love their interface, and their pricing options (you pay per project, which can have several repositories tied to it; you can even have several hg repos and several SVN repos tied to the same project, which is what I do.)
Needless to say, even when we finally switched to SVN, we still had problems. Coworkers mostly didn't read the svn manual or didn't care to understand what SVN is or does. My mailbox was literally burning with semi-hostile messages and for weeks I couldn't do anything except sit at coworkers' desks and explain the same thing over and over ...
We're talking about people who would never shave a Yak because they'd wrangle 100 hairy Yaks than spend 20 minutes reading how the automatic Yak shearers work.
Even though I use git for all my personal stuff, if I started a console or PC studio, I too would be setting up a P4 server the first week rather than even experimenting with git.
As you say, it seems to be the only code-oriented VCS that also comfortably handles large files (especially larger than available memory) with reasonable speed.
Traditional version control systems consider giant files a user smell.
Although I met a student studying Java for a CS degree who hadn't heard of Python. So anything is possible I suppose...
As to Mercurial vs. Git, whatever. That argument bored me two years ago. Mercurial is, in my experience, easier for SVN users to pick up, but just use whatever works for your situation.
I actually consider primitiveness (insofar as it means simplicity) to be an advantage in collaboration tools like VCSes and ticketing/bug systems.
I currently work, for the first time, at a shop that uses git, and the closest thing we have to a git expert/evangelist has been complaining about how much hand-holding of developers he's had to do, especially as the company grows.
I like to point out that it's not the job of these developers (and web designers and a sysadmin) to become experts in a VCS, so one which is complex enough that it can't be effectively (if not fully) used by someone with just a passing knowledge, is bound to waste more time than it saves.
My other allegation is that git is not targeted at startups, which are, typically, very non-distributed collaboration environments. I like to gibe that Linus is the only target, but git does strike me as much more geared toward the decentralized development model of open source projects.
Moving from one vcs to another usually meant 1) a difficult and error-prone history conversion process and 2) a cold turkey switch to a new way of working. That's a recipe for resistance and frustration.
If the incumbent is svn, early-adopter types can start using git-svn or hgsubversion right now, and can convert others one-by-one if and when they're ready.
From a sales point of view, bitbucket's offering of 5 free private repos might actually help them attract more developers who are making proprietary apps and making money, and then more willing to pay for more repos in the future. I personally have quite a few repos there partly because I don't want the publicity of github (and partly because hg was quicker to learn than git :P). I also know a friend who switched to bitbucket simply due to the private repo offerings.
For open source though, github is probably the way to go.
This is all just anecdotal though, I'd love to hear some solid evidence if anyone has some.
I think this had an effect on the offers.
Anyway, for some reason one of my free accounts has unlimited users right now. Not sure how that happened but I think it might be because I had more than 5 users on a repo before they made the upgrade? Pretty awesome regardless.
It certainly can't hurt to be the first site to do it. (first considering github, bitbucket, google code, codeplex, sourceforge(?))
Given the growth of the the bitbucket team thanks to atlassian, I do think it will improve quickly. (I'm not even sure there was more than one full time person working on BB before)
1. Git is superior to its competitors as a technology for use by developers. It isn't very much superior these days, but it is enough to be noticeable and preferred. This is a superiority in use and performance, which are enough of an edge to offset its architectural failings.
2. Github has better UX than the competition: I've been referring to code hosted in bitbucket frequently, and I often sigh at what they're doing. Getting to any given piece of code takes longer and requires more clicks than on Github. Github also has great features for understanding how code is moving within a project, and I find them more comprehensible and useful than the competition's.
It doesn't hurt that Github is a small self-started company with a staff full of brilliant people and a talented support staff. They certainly win the personality part of the competition thoroughly.
BitBucket in particular have made a good attempt after the Atlassian takeover, with the infinite free private repos being the most interesting part - I use it a lot, but mostly because I do a lot of small personal projects, and so the "social" features of GitHub - those which benefit most from its prominence - are mostly meaningless to me.
And now I see many of those projects move to github and everyone I know is a big fan of the forking and pull requests.
But the landscape will change again and github keeps needing to iterate and innovate on their product. Just about every time I use github, I curse their disastrous search. There is just so much innovation they could develop around code management which they don't have, a competitor could jump in and they too could become the darling of the development world. They too will have "won".
Look at the recent shift by Bitbucket after being purchased by Atlassian. Bitbucket can now afford to be a money pit so that Mercurial can gain further adoption. Atlassian is really trying to build an enterprise solution around Mercurial (they've said this publicly) so they don't care if they lose money with Bitbucket. And this is going to affect Github. Only time will tell how much of an impact this is going to have.
So yeah I'm glad I decided I didn't want to get into this market space. I decided I was better off focusing on developing the innovations and be a complimentary asset for sites like Github, Bitbucket, and other hosting sites instead. My product certainly has overlap with some of the things that Github and Bitbucket has, but it's not designed to be a hosting solution. It's more of a competitor for Atlassians Fisheye and Fogcreeks kiln.
If you are curious you can see a bit of my tool in action at http://www.youtube.com/watch?v=MfEDwirFO1s
Sorry it has no sound so it might not make any sense.
If Github is bringing people to git, then it stands to reason that a seemingly disproportionate number of git users would use Github.
I think it's wrong to compare bitbucket to github. You won't move to github because github is superior, but if you want to move to git, you'll probably do.
Bitbucket has all I need. I don't think I need any other fancy features, I already get things done the right way. I'm using the free version, but would upgrade if needed.
Also, make sure you read the down times before you argue about it:
"Bitbucket will be unavailable for approximately two hours starting Monday, Nov 1st, 01:00 GMT for a kernel upgrade."
1. github is a social service, or perhaps best used as a social service
2. it has "the momentum", which is paramount for social services
3. git has "the momentum" wrt adoption of dvcs
There are assumptions implicit within these arguments that I've accepted, based largely on the summation of 'soft' and anecdotal evidence that has built up over the last couple years. People are right to challenge them, and right in their criticism that I take them at face value.
Am I the only one who is not particular impressed with Github? It seems OK, but not in a different league from other code hosting places the way many make it out to be.
http://goo.gl/XfvG (http://lusislog.blogspot.com/2010/10/designed-for-developers... for the paranoid)
Take a look at http://goo.gl/ and note the stats on urls you've previously shortened.
"Yay Mercurial!" there we are, hg wins!! Whoo!!
Who the hell thought this counted as news? Even as opinion, it's wishy washy.