Live data from Hacker News

Prefer mercurial to git

lists.gnu.org

131–140 of 189 posts

Re: Prefer mercurial to git

#131

I was forced to use mercurial for a few years at work and I really hated it. Sure it has a better learning curve than git (or did) but I found it to be incredibly frustrating already knowing git. In addition, I found it to be slower, less flexible, and prone to permanent repository corruption - yes, in git you do see repo corruption but because of the cryptographic nature of git objects you know immediately. HG will…

I can relate to these comments because when I was a Git user forced to use Mercurial for Firefox development, I initially thought much of the same. I have since come around [1]. Mercurial has come a long way in the last few years. While I used to see repo corruption semi-frequently, I have not seen it once in the last year or so. This can be attributed to bug fixes and less reliance on mq. mq is a giant hack on top o…

Maybe it's just me, but recommending a DVCS because it hasn't corrupted your data lately is like recommending a car because it hasn't had the wheels randomly fall off lately.

Re: Prefer mercurial to git

#132
post #100
post #44

Earlier quoted context omitted.

The people who avoid the GPL3 do it because they do not share the goals of the GNU project. The GPL3 expresses the same philosophy as the GPL2. GNU released a new version only because companies discovered a loophole (a bug if you will) in the GPL which allowed them to build non-free (as in GNU) systems based on GPL software. GNU was founded to fight such systems. However, Linus Torvalds (Linux and git) has no problem…

> The people who avoid the GPL3 do it because they do not share the goals of the GNU project. Not necessarily true... it might simply be that they feel the goals of GNU are better pushed for via means other than GPLv3. E.g. read a statement by Linux kernel devs regarding the second draft of GPLv3: http://lkml.org/lkml/2006/9/22/217 Has nothing to do with not supporting the goals of GNU, and more to do with not introd…

Please don't bring up that old discussion about an 7 old draft of a license. There is better articles about the actually license as it exist (like http://www.computerworlduk.com/news/open-source/6882/torvald...).

Re: Prefer mercurial to git

#133

Earlier quoted context omitted.

In git a commit is basically the root of a Merkle Tree [1], i.e. every reference is the sha1 sum of the object being referenced. If you take a commit apart what you see is a commit message, a hash of its parent commit and a hash of a tree object. That tree object itself contains hashes of file objects and tree object as well as their corresponding names. Thus assuming you would want to tamper with a file of a commit…

> So the complete state of the repository is cryptographically secured It should be noted, however, that Linus and others specifically disclaim that this is a security mechanism: "Git uses SHA-1 in a way which has nothing at all to do with security.... It's just the best hash you can get.... It's about the ability to trust your data." --Linus ( http://en.wikipedia.org/wiki/SHA-1#Data_integrity ) And in the midst of a…

To be honest I don't buy his argument. If it is not about security, why not use md5? It is faster after all and gives you the same protection against accidental data corruption as sha1. And if he cared about security then he should have chosen sha256 or sha512, the latter of which is even faster than sha1 on 64bit systems [1] and can be truncated if you think it is too long.

And really there is no denying that git relies on the security of sha1, especially its second preimage resistance[2]. Otherwise all the signed Linux releases would be useless, because you could exchange the files in the release with your own, malicious ones. Even collision resistance is important, as if you are a rogue kernel developer you can craft two files with identical hashes: One that passes scrutiny upstream and one that has a subtle backdoor. If it is in one those binary blobs there is a very low chance of it ever being found.

My guess is that he did not really put more than 5 minutes of thought into the decision. He has a track record of mediocre understanding of and low regard for cryptographic topics, see for example: http://thread.gmane.org/gmane.linux.kernel/1173350/focus=117... .

[1] http://bench.cr.yp.to/results-hash.html

[2] You cannot find another file with the same hash as the given file.

Re: Prefer mercurial to git

#134
post #117

Earlier quoted context omitted.

> Having no problem with closed source does not make you "anti-free-software". While true, its a bit odd of a statement. The following statements are also equally true: Having no problem with deforestation does not make you "anti-environmentalist". Having no problem with Ku Klux Klan members does not make you "anti-tolerance". Having no problem with murder and theft does not make you "anti-government". Except... if y…

>So why do you label FSF as zealots for disliking actions that helps those that want to threaten users with lawsuits Without even getting into the broken-ness of your analogies, being anti-DRM and anti-patent-abuse and so on is one thing. Calling someone evil because they don't publish the source of their app is quite another. According to their dogma, if I write a program and don't release the source code, I have pe…

> What if I don't care if some corporation comes along and takes my code and releases a product based on it? Cool! I've helped the world somehow!

Say you developed a program that keep tracks of group of people. The Ku Klux Klan use it to track down black people, and the anti-tolerance movement use it to track Ku Klux Klan. You helped the world and the anti-tolerance movement should be happy right? If they would prefer that the tool could not be used by the Ku Klux Klan, then they are evil zealots with no ideological tolerance.

Pardon my French too, but that's is fucking idiotic.

> And people who want to use my code don't have to get involved in GPL politics and drama!

That is a very dishonest statement. People can use Debian without becoming involved with politics and drama. I will state fact-less that most people who use GPL have not becoming involved with politics and drama.

> I know religions with more ideological tolerance.

Like BSD proponents I suppose? You own comment stated BSD as the right choice and anyone who disagrees is wrong. Maybe instead of preaching tolerance, you practice tolerance of people that disagree with you. Is it not more tolerant behavior avoid derogatory terms?

Re: Prefer mercurial to git

#135
post #95

Why are people sweating small stuff like version control systems? How can you be a fanboy of a thing that keeps track of branches and patches. It's only incidentally related to Software development, you shouldn't feel as if a limb of yours was amputated if you \ gasp\ had to use a different one for another project. It's like using a different mail client or a different bug tracker; it doesn't affect what you can expr…

That's true, in a way, until someone tries to force CVS on you. Yes they are all sideline tools but once you get used to something, its the best thing in the world, until you get used to something else. Change is great, but not quite appreciated enough.

At work (where my script to convert all of our projects from CVS to Hg is complete for almost ¾ of a year now) I now resort to a hacky PowerShell script that allows me to work locally with Hg and then push selected revisions to CVS. Mostly because I fear that we won't ditch CVS for quite a while and when we do I'm probably the one to blame for lost developer productivity while we're coming to grips with a new tool.

Re: Prefer mercurial to git

#136
post #134

Earlier quoted context omitted.

>So why do you label FSF as zealots for disliking actions that helps those that want to threaten users with lawsuits Without even getting into the broken-ness of your analogies, being anti-DRM and anti-patent-abuse and so on is one thing. Calling someone evil because they don't publish the source of their app is quite another. According to their dogma, if I write a program and don't release the source code, I have pe…

> What if I don't care if some corporation comes along and takes my code and releases a product based on it? Cool! I've helped the world somehow! Say you developed a program that keep tracks of group of people. The Ku Klux Klan use it to track down black people, and the anti-tolerance movement use it to track Ku Klux Klan. You helped the world and the anti-tolerance movement should be happy right? If they would prefe…

>Say you developed a program that keep tracks of group of people. The Ku Klux Klan use it to track down black people, and the anti-tolerance movement use it to track Ku Klux Klan.

Stop it. You're basically engaging in a not-hitler version of Godwin's Law. And it's not even relevant, since the GPL is only about source code, not about whatever that code is used for. In your completely arbitrary and fucked up example, as long as the KKK released the source code to their tracking app, the GPL has nothing to say.

>You own comment stated BSD as the right choice and anyone who disagrees is wrong.

No, I said BSD is a de-facto more permissive license. It objectively has fewer restrictions on a developer than the GPL. Read what I said, not what you want me to have said, please.

Re: Prefer mercurial to git

#137

I was forced to use mercurial for a few years at work and I really hated it. Sure it has a better learning curve than git (or did) but I found it to be incredibly frustrating already knowing git. In addition, I found it to be slower, less flexible, and prone to permanent repository corruption - yes, in git you do see repo corruption but because of the cryptographic nature of git objects you know immediately. HG will…

my first run with git also got me a corrupted repo. never got support for it.

but this os pointless, the keyword in your post is "forced".

Re: Prefer mercurial to git

#138

Earlier quoted context omitted.

I'd love to be proven wrong on this. Considering that their figurehead regards closed source software as unambiguously evil, I don't see many other ways to interpret their behvaior. But: >Picking licenses that explicitly forbid incorporation of your code in modern GNU projects By GNU fiat and nothing more. Some of us would rather code than get involved in tiresome political disputes. (See also the BSD class of licens…

"I'd love to be proven wrong on this. Considering that their figurehead regards closed source software as unambiguously evil, I don't see many other ways to interpret their behvaior." Assuming (with confidence) that you mean RMS, he regards it as evil but my understanding is that his framework for making the assertion is more consequentialist than his detractors believe. With "evil" usually used in more deontological…

> No, by technicality of the licenses ...

This teacup tempest is entirely of GNU's own making. It's nobody else's fault that their licenses are so onerous that they can't even keep them compatible with later revisions they themselves produce.

Re: Prefer mercurial to git

#139

Earlier quoted context omitted.

I can relate to these comments because when I was a Git user forced to use Mercurial for Firefox development, I initially thought much of the same. I have since come around [1]. Mercurial has come a long way in the last few years. While I used to see repo corruption semi-frequently, I have not seen it once in the last year or so. This can be attributed to bug fixes and less reliance on mq. mq is a giant hack on top o…

Maybe it's just me, but recommending a DVCS because it hasn't corrupted your data lately is like recommending a car because it hasn't had the wheels randomly fall off lately .

The parent's recommendation was not based upon data not being corrupted lately. He stated that this issue is not as prevalent as it used to be, countering the commentor's slightly outdated experience, and then went on to list off features as the basis of his recommendation.

Re: Prefer mercurial to git

#140

Earlier quoted context omitted.

I can relate to these comments because when I was a Git user forced to use Mercurial for Firefox development, I initially thought much of the same. I have since come around [1]. Mercurial has come a long way in the last few years. While I used to see repo corruption semi-frequently, I have not seen it once in the last year or so. This can be attributed to bug fixes and less reliance on mq. mq is a giant hack on top o…

Maybe it's just me, but recommending a DVCS because it hasn't corrupted your data lately is like recommending a car because it hasn't had the wheels randomly fall off lately .

[deleted]
Post reply on HN