News for hackers. Stuff that matters.
Re:Why did Git become so popular? by silverbax88 on Friday November 30, 2012 @11:46AM (#4853998)
Having used ClearCase, CVS, Subversion, TFS, Git and Mercurial, I would have to say it's because not enough people have tried Mercurial. I have no interest in Git, but I think people like GitHub (or maybe don't know about BitBucket)
Re:Why did Git become so popular? by ajross on Friday November 30, 2012 @11:57AM (#4854055)
This contains the answer for why git won: Mercurial people have "no interest" in it. What that tells me is that you have no interest in working with the community and contributing to other peoples' projects, most of which use git these days. Sure, if you want a SCM for your own team or your own private use, you can make a strong case for hg being "better". But that's not what SCM is for.

Using it in your own ivory tower isn't going to impress anyone for the simple reason that no one sees it. Instead, people look at the broader world of all the interconnected git archives in the linux and web development communities, get excited, pull repos and learn git. There's just no equivalent in the hg community that I see. You guys have walled yourselves off, and it's killing your software.

Re:Why did Git become so popular? by anonymous on Friday November 30, 2012 @12:22PM (#4854206)
I looked at mercurial once. I didn't start using it, because it has a more complicated vocabulary than git.

Git just has a directed acyclic graph and pointers to the nodes of it. That's all. End of story.

Mercurial has the concept of a branch, a tag and so on as seemingly separate axiomatic things. It's not as stupid.

I like stupid.

Re:Why did Git become so popular? by solutionyogi on Friday November 30, 2012 @01:37PM (#4854656)
Exactly. Stupid is better. Stupid doesn't break. I like stupid things which I understand in and out. Yes, git command line is not the best but because I understand the data format so well, you can easily use different approaches to solve a given problem.
Re:Why did Git become so popular? by micampe on Friday November 30, 2012 @01:15PM (#4854530)
Subversion is really simple too: it only has files and directories, branches are directories, tags are directories. I don’t think stupid and simple worked very well in that case.

Arguments can be made for both sides, picking a single design decision and saying that that’s obviously better is not going to work. Implementation and (especially in a case like distributed systems) network effects are much stronger than any single isolated design decision.

Re:Why did Git become so popular? by Aga on Saturday December 01, 2012 @08:24AM (#4857548)
Albert Einstein is attributed with a great quote: “Everything should be made as simple as possible, but no simpler.”

I would argue that in the case of Git it's not about a single design decision. The whole design is very simple and easily understandable. Thus everything can be derived from the design decisions.

The design decisions also have clear rationales.

"Why something is better" and "why something has "won"" are of course different questions that deserve different answers.

Re:Why did Git become so popular? by micampe on Sunday December 02, 2012 @02:16AM (#4860445)
Having taught Git to a number of people, I disagree that it’s easily understandable. It’s easy to understand the general idea of how it works, but actually productively using it is an entirely different matter.

Of course, I may also be a terrible teacher.

Re:Why did Git become so popular? by Aga on Sunday December 02, 2012 @08:11PM (#4863411)
I too have been teaching Git for many years now.

I find it easy to teach, thanks the concepts being simple and clear. I don't have to transfer a lot of information before people can start reasoning about things themselves and independently finding out more.

I always try to make sure people understand two things:

1) The history tree (==how to read the metro-map that is gitk)

2) Distribution, that you are responsible for syncing with others, not the other way round

Almost everything else I prefer the students at least try to figure out themselves.

Re:Why did Git become so popular? by anonymous on Friday November 30, 2012 @01:33PM (#4854630)
Sure, I was talking about my situation.

And of course, if mercurial could give me more features, I'd probably think twice. However, it's practically equivalent to git.

I was comparing git and mercurial, not giving the one true testament to comparison of every possible version control system.

Re:Why did Git become so popular? by jiggy2011 on Friday November 30, 2012 @12:05PM (#4854118)
This seems a little exaggerated. Before git took over there were all kinds of VCS in use including a bunch of proprietary stuff.

If most of your work is done with one group of people inside your company and you decide mercurial is a better fit it would seem silly just to go with git because it is popular.

Besides the two are similar enough that someone versed in mercurial should be able to learn enough git to be useful quickly enough should it be required.

Re:Why did Git become so popular? by ajross on Friday November 30, 2012 @12:11PM (#4854149)
No, before git took over there was CVS (and a brief moment when svn looked like it might win, before being forgotten). There still are "all kinds of VCS including a bunch of proprietary stuff". But as before with CVS (and RCS before it) the open source community has picked an overwhelming favorite.

And I'm not saying you should choose git because it's better. I'm saying git "won" in the community because it was the choice of people who want to play in the community. Culture matters, and hg's proponents, for whatever reason, are less likely to want to share their stuff.

Re:Why did Git become so popular? by jiggy2011 on Friday November 30, 2012 @12:15PM (#4854166)
Well I remember MS Sourcesafe being popular a few years ago.

Do hg people "share less" or are there simply less of them? IIRC github allows commits from hg as well as git.

And of course not everyone (in fact possibly only the minority) is interested in cloning and issuing pull requests on OSS a huge amount of programming happens internally in corporations where everyone will use whichever VCS is mandated.

Re:Why did Git become so popular? by PuercoPop on Friday November 30, 2012 @01:49PM (#4854746)
it is bitbucket the one that allows both hg and git. Github only allows git
Re:Why did Git become so popular? by stouset on Saturday December 01, 2012 @04:25AM (#4857212)
Patently and laughably false.
Re:Why did Git become so popular? by samspot on Friday November 30, 2012 @01:05PM (#4854466)
I'd like to know your grounds for saying svn was "forgotten". Forgotten by who?
Re:Why did Git become so popular? by ajross on Friday November 30, 2012 @01:20PM (#4854562)
Subversion is used by very few remaining public projects, almost entirely for legacy reasons. Almost literally zero "recent" projects are using it at all. It has no more mind share than does CVS at this point, and "no one" uses CVS (again, except for a few legacy spots). I really didn't think that was controversial.

Subversion was indeed a much better CVS than CVS. And the world almost jumped on it as a standard. But then git appeared. If you were a young person looking at building exciting projects from source, you might never have reason to learn svn. I think that qualifies as "forgotten"

Re:Why did Git become so popular? by samspot on Friday November 30, 2012 @01:53PM (#4854769)
I think we're at odds because I'm thinking of developers in general and you are focused on open source work. I don't have stats, but I'd be willing to bet that a majority of code being written is closed source even today. I think this is worth remembering in any discussion about source control.
Re:Why did Git become so popular? by jiggy2011 on Friday November 30, 2012 @01:32PM (#4854620)
I'm willing to bet there's plenty of small PHP shops out there still using SVN.
Re:Why did Git become so popular? by garenp on Friday November 30, 2012 @12:53PM (#4854397)
So you "know" "Mercurial people", yet speak of others as coming from an "ivory tower"? Given that you seem to be in possession of special knowledge, why don't you tell us precisely what "SCM is for"?
Re:Why did Git become so popular? by silverbax88 on Friday November 30, 2012 @11:58AM (#4854071)
As I said, I worked with Git. I am no longer interested in it as a solution. I'm not sure why I (or any programmer) would need to 'get excited' to learn Git. It's pretty easy to understand.
Re:Why did Git become so popular? by samspot on Friday November 30, 2012 @01:00PM (#4854441)
A lot of us work on closed-source projects you know. Open source is great, but it isn't the whole world.
Re:Why did Git become so popular? by ajross on Friday November 30, 2012 @01:16PM (#4854535)
The original questions was specifically about why git was so commonly installed on Debian hosts.
Re:Why did Git become so popular? by micampe on Friday November 30, 2012 @01:11PM (#4854507)
Unnecessarily harsh response to a good point.

Network effect: many many people pick git because everyone else uses it (and that’s a good reason), thus they never try Mercurial, which may or may not be better suited to their use case.

[deleted]
Re:Why did Git become so popular? by dexen on Friday November 30, 2012 @12:16PM (#4854177)
> It's git that is unfriendly to others...

I have some code in Git with my custom patches, with upstream being Hg. `git-hg' works like a charm -- simple, clean etc. etc.. Dunno what you are talking about here.

Git provides git-fast-export & git-fast-import as two-way interconnects, with well-defined data formats.

Re:Why did Git become so popular? by klibertp on Friday November 30, 2012 @12:34PM (#4854281)
> Dunno what you are talking about here.

I clearly didn't, too, so I deleted the post.

Re:Why did Git become so popular? by ajross on Friday November 30, 2012 @12:13PM (#4854159)
This still misses the point. It's not a technical problem, and you can't solve it with software. Being able to interoperate with git does nothing to convince users to use your great tool when all the cool people they know are using git. Where are the hg champions? The culture is the point, not the software.
Re:Why did Git become so popular? by garenp on Friday November 30, 2012 @01:18PM (#4854545)
Change the subject much? You missed the point entirely: you took one persons response and generalized it to the entire population of Mercurial users--claiming it is representative of an entire culture of that population. Then, you claim to be in possession of special knowledge as to what "SCM is for".
Re:Why did Git become so popular? by jlgreco on Friday November 30, 2012 @12:17PM (#4854185)
1) Tools to do that certainly exist. Nobody really cares about them to make them nicer.

2) Git is trivial to extend. If something for git doesn't exist that does not suggest any sort of arrogant attitude from git, but rather just a total lack of interest from both the developers and the community.

Re:Why did Git become so popular? by papsosouid on Friday November 30, 2012 @12:50PM (#4854382)
>Using it in your own ivory tower isn't going to impress anyone for the simple reason that no one sees it

Using loaded terms to put down people who use the tool they prefer isn't going to convince anyone that your argument has merit.

Re:Why did Git become so popular? by ajross on Friday November 30, 2012 @01:25PM (#4854580)
Making style points about bland, cliched[1] metaphors adds even less to the discussion. Seriously? "Ivory Tower" (!) is a forbidden term that should be banned from civil discourse?

[1] Now that you've drawn attention to it, I do indeed wish I'd phrased that differently. But certainly not because I hurt someone's feelings...

Re:Why did Git become so popular? by papsosouid on Friday November 30, 2012 @04:22PM (#4855529)
Who said it was forbidden? Or that you hurt anyone's feelings? Your argument is less effective due to the words you used. That is what I said.
Re:Why did Git become so popular? by pooriaazimi on Friday November 30, 2012 @11:51AM (#4854023)
To be fair, BitBucket was way uglier than GitHub until very recently (latest redesign). That's a turn-off for most people (unfortunately).

The new BitBucket is awesome, though.

Re:Why did Git become so popular? by krmmalik on Friday November 30, 2012 @12:15PM (#4854176)
Clean design inspires confidence. I looked at BitBucket about 2 years ago, and just didn't have enough confidence in it, but recently created quite a few repo's on it and am using them everyday. The new re-design makes all the difference in gaining my trust.

At least that's how I see it.

Re:Why did Git become so popular? by bhadra on Friday November 30, 2012 @01:51PM (#4854758)
I agree with you. Even though BitBucket allowed private repositories for free, their poor usability and interface kept users away. GitHub is not just Git. GitHub would have become popular due to its ease of use and cool user interface even if it was based on Mercurial (hg) or, may be, even Darcs. Bitbucket's latest design is good but has arrived later than expected.
Re:Why did Git become so popular? by tterrace on Friday November 30, 2012 @12:33PM (#4854274)
Definitely. I remember checking out the BitBucket repo for pygments a while back and noticing how clunky the ui was compared to github. The new redesign at a glance seems like a huge improvement.
Re:Why did Git become so popular? by BadDesign on Friday November 30, 2012 @01:44PM (#4854710)
Agreed! BitBucket's [http://bitbucket.org/] new UI rocks!
Re:Why did Git become so popular? by pnathan on Friday November 30, 2012 @11:59AM (#4854076)
I have used Mercurial extensively, and I while I find its interface superior to git, I find that git actually models the kind of development I do.

Also, git is accumulating tooling and integration with other tools much more than hg is, afaict.

Re:Why did Git become so popular? by pekk on Friday November 30, 2012 @11:54AM (#4854042)
BitBucket is not even close to being as popular as GitHub, and it's not as nice for just browsing around, so the network effect is against it: you don't put code on BitBucket to be seen really.

Free private repos are great, of course.

Re:Why did Git become so popular? by rimantas on Friday November 30, 2012 @01:03PM (#4854456)

  > I would have to say it's because not enough people have
  > tried Mercurial
Or maybe enough of them tried Mercurial. I know I did, then switched to git and did not look back since.
Re:Why did Git become so popular? by hnriot on Friday November 30, 2012 @01:48PM (#4854742)
I switched to hg, found it very much the same as git, no appreciable difference to warrant moving again.

code control is a solved problem and people have moved on to do other things...

Re:Why did Git become so popular? by klibertp on Friday November 30, 2012 @11:58AM (#4854070)
My personal favorite is Bazaar, but Mercurial is good, too. I also heard very good opinions about darcs, but didn't try it yet.

Mercurial has BitBucket and Bazaar has Launchpad, so they hardly 'loose' to git and GitHub here. There is but one thing that git does better (I'm forced to use git at work) - it's faster, or at least feels faster. Other than that, on the technical side, both Bazaar and Mercurial are I think on par with git and they win hands down in terms of ease of use.

So, yes, I would guess that the cause of git popularity is primarily Linus and then GitHub and then the popularity itself.

Re:Why did Git become so popular? by jlgreco on Friday November 30, 2012 @12:12PM (#4854152)
Popularity itself is an often overlooked feature. When trying to sell the use of a version control system to others (peers, coworkers, bosses, etc. Or more difficult if you are trying to make an institutional change) you are already in a better position with git than you are with mercurial.

If all mercurial is bringing to the table is being a bit more pleasant, I am still going to pass over it for that reason.

Re:Why did Git become so popular? by garenp on Friday November 30, 2012 @01:05PM (#4854467)
I can sympathize with the difficulty of persuading others. But consider this not-so-far-fetched example: if you're choosing an open-source database, you would choose MySQL based on popularity instead of PostgreSQL, which I would argue in most cases is a mistake--which you'll likely have to live with for years.
Re:Why did Git become so popular? by solutionyogi on Friday November 30, 2012 @01:42PM (#4854687)
That's not a fair comparison. Mercurial is better than git in certain aspects (mainly command line experience) but git by itself is a solid content tracker. It has an extremely simple data model and it's rock solid. As someone else said in this thread, git has no separate notion of 'branch', 'tag' like Mercurial. In a way, git is actually like PostgreSQL, a solid piece of software which you can trust.
Re:Why did Git become so popular? by alwillis on Friday November 30, 2012 @02:06PM (#4854846)
It's more than just command line stuff; Google did an extensive comparison that more people should look at: http://code.google.com/p/support/wiki/DVCSAnalysis
Re:Why did Git become so popular? by harshreality on Friday November 30, 2012 @02:24PM (#4854970)
That comparison is over 4 years old. Google code now supports git, and most of the arguments against git are either spurious ("git history isn't sacred!")[1] or have been improved since then (better windows support, smart http protocol, single user-visible binary, etc.).

[1] dvcs history locally should not be sacred, because rewriting experimental branches is necessary for clarity and to avoid polluting the main repository branches. dvcs history on a central repo can be made sacred with git by disabling non-ff commits and disabling deletes.

Re:Why did Git become so popular? by jlgreco on Friday November 30, 2012 @02:07PM (#4854854)
In addition to the points that solutionyogi raises, I don't think that is a very good comparison when you consider the differences in commercial and private RDBMS', and the differences between commercial centralized VCS and open source DVCS.

DVCS (either mercurial or git) seems to be a much more exotic concept for people unfamiliar with DVCS than MySQL/PostgreSQL is to those only familiar with, say, Oracle RDBMS.

I'm not a DBA though, so maybe I am wildly wrong with that thought.

(Also this comparison maps back to the topic incorrectly, in that I obviously greatly prefer PostgreSQL in the comparison, but I greatly prefer git in the other scenario).

Re:Why did Git become so popular? by harshreality on Friday November 30, 2012 @02:13PM (#4854901)
What do you like about bazaar in contrast to mercurial or git?
Re:Why did Git become so popular? by 16s on Friday November 30, 2012 @12:32PM (#4854269)
I was a big subversion fan until I took a systems programming position where the dev team used Mercurial. It took me a few weeks to really start liking it, but now I absolutely love it. It's great.
Re:Why did Git become so popular? by debacle on Friday November 30, 2012 @11:49AM (#4854013)
Which tool do you prefer the most?
Re:Why did Git become so popular? by silverbax88 on Friday November 30, 2012 @11:58AM (#4854061)
TFS for large scale enterprise, hands-down. But I don't recommend it for small shops. (Expensive, although I know it's free for shops with 5 devs or fewer) simply because code management is easy and you can build automated deployment without having to use anything else (you can script with PowerBuilder, Ant, whatever if you like, though). The issue I've found with that is it's not easy to find people who don't code for a living but understand scripting enough to build automated deployments. I'm also not crazy about TFS' visual displays of branches - ClearCase (which is god-awful in every other way) has the best visual display of code and branches.

Mercurial for anything smaller or startup. Love it. The issue with Mercurial is that you'll need to determine how you want to do automated deploy builds, but the code management is great and using BitBucket + Hg I never have trouble seeing which code I'm working in or resolving conflicts. I actually think Mercurial has the second-best visual branching display.

Re:Why did Git become so popular? by daok on Friday November 30, 2012 @12:50PM (#4854380)
>>TFS for large scale enterprise, hands-down.

Real big enterprise cannot use TFS without being in a mess with merge. You always have to merge to a parent which require a lot of organisation. Also, it's not the fastest source control when the code base is over few gigs per branches. With over 50 developers/testers (in the same project) we had reach a bottleneck with TFS.

Re:Why did Git become so popular? by Tloewald on Friday November 30, 2012 @11:53AM (#4854031)
We assume ClearCase is the worst, right?
Re:Why did Git become so popular? by igrekel on Friday November 30, 2012 @12:07PM (#4854129)
Assuming too much... People who conplain loudly about ClearCase most often never understood how it is supposed to work. Ok ok, you need an army of administrators to make it work but still far from being the worst.

Sourcesafe?

Re:Why did Git become so popular? by raverbashing on Friday November 30, 2012 @12:20PM (#4854192)
"most often never understood how it is supposed to work"

This is a BS argument.

Yes, everybody got it wrong, Git is wrong, SVN is wrong, it's CCs broken model that's correct.

" you need an army of administrators to make it work"

Yes, let's sink an awful amount of money in a half-baked software that needs all kinds of 'helpers' to work properly.

Personally I won't work in a company that uses CC anymore, and it's been only bliss since then.

Sourcesafe is bad, but it's a different kind of bad. And it makes even CC look good.

Re:Why did Git become so popular? by Tloewald on Friday November 30, 2012 @02:44PM (#4855060)
I don't have any experience of knowledge of Sourcesafe, but it wasn't in the original list ;-)