Why a small team chose Mercurial.
ninthdivision.com
Why a small team chose Mercurial.
1–10 of 32 posts
Re: Why a small team chose Mercurial.
#2Re: Why a small team chose Mercurial.
#3Before this devolves into a git versus hg holy war by people who never read the linked blog post, I'll point out that they chose hg over svn. It's mainly a cheerleader piece for DVCS with the git versus hg choice being a minor point.
so yes, cheerleader piece you are right on that. not much cheerleading for hg these days.
Re: Why a small team chose Mercurial.
#4"In Mercurial you can’t change previous committed code. In git you can change the past commits in the repo. I am sure there are cases where the linux kernel needs to do this (I can’t think of any), but this is some we don’t even want to have the option to do."
Yes, you certainly can change commits in hg. The tools to do it in git are a bit more refined, but there's no fundamental difference here.
I don't want every failed, unbuildable, safety-net commit making it into my project history. I want it to be possible for people to understand change.
For example, here are the last few commits from my primary work project: http://pastebin.com/BiNpP08s
In a week from now, will you need to see the four different attempts it took to get that last change right? If so, you can always follow the code review link and see the discussion that went on there and how it shaped into that file change, but anyone who makes actual good use of their project history will get frustrated pretty quickly at thought-free changes.
Re: Why a small team chose Mercurial.
#5Re: Why a small team chose Mercurial.
#6This misconception always bothers me: "In Mercurial you can’t change previous committed code. In git you can change the past commits in the repo. I am sure there are cases where the linux kernel needs to do this (I can’t think of any), but this is some we don’t even want to have the option to do." Yes, you certainly can change commits in hg. The tools to do it in git are a bit more refined, but there's no fundamental…
The question is: Why would you commit (to a stable branch) when your code doesn't build or pass tests? Why would you want to eliminate a state where you made something that worked? I don't see the appeal in modifying history.
If you just need to save some partially working state, etc. you can use patch queues- They make much more sense here.
Re: Why a small team chose Mercurial.
#7Before this devolves into a git versus hg holy war by people who never read the linked blog post, I'll point out that they chose hg over svn. It's mainly a cheerleader piece for DVCS with the git versus hg choice being a minor point.
yes, please read the linked blog post. they used both hg and git quite a bit but found hg easier to host, use and move over from subversion (convert repos but also command line). so yes, cheerleader piece you are right on that. not much cheerleading for hg these days.
Joel Spolsky seems to like it: http://hginit.com/
Re: Why a small team chose Mercurial.
#8Pretty good; liked that they didn't just say "HG GOOD, GIT BAD". I'm confused about the git learning curve though; I started using git on my own this summer, and I was able to immediately pick up the commands I needed to get by literally the day I started. I'll admit I don't have to host repositories, like they would in for their company; but for simply using git as a developer it was very painless.
EDIT: I am not making a value judgment here. It's harder to learn to fly a plane than drive a car, but that hardly makes the car better than the plane or vice-versa. It's just a recognition that their learning curves aren't identical.
Re: Why a small team chose Mercurial.
#9Before this devolves into a git versus hg holy war by people who never read the linked blog post, I'll point out that they chose hg over svn. It's mainly a cheerleader piece for DVCS with the git versus hg choice being a minor point.
I don't really get the big issue with branches in svn though. Branches and tags are "cheap" operations in svn, and making personal branches, etc. was something I used to do. Merging back into trunk was never a huge issue either. Maybe I've been lucky; also our team was not very big and different people weren't often working on the same source files at the same time.
Re: Why a small team chose Mercurial.
#10i also use bitbucket and since having been bought by atlassian, was able to get lots of free private repositories. i think some people mentioned that they accidentally left cookie secrets in their code on a public github project.
i'm still too early in development to get into the perceived branching woes that others are talking about, but i'll let you know when i get there.