Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Of the DVCS systems that came out at around the same time (hg, git, and bzr all came out within a month or two of each other), I would probably rate git the worst.

The most notable issue with git is that it's help is... anti-helpful. It is pretty jargon-filled, and there have been numerous moments where reading a help page has left me actively more confused about what a git command is doing.

Of course, part of the reason why the help is so unhelpful is because git's UX is poorly designed. When even the help page has to admit that a command actually does three different things depending on parameters, you know it's bad.

I'll also point out that I've seen far more repository corruption issues with git than I have with any other VCS (and I've used CVS). Accidentally torching your data is quite easy in git, and appreciate the irony of an immutable store of data needing a garbage collector for the data it's storing. Something like Mercurial's changeset evolution and phases is far, far saner for development than working with branches in git.



> appreciate the irony of an immutable store of data needing a garbage collector

You cannot have exclusive immutability without a garbage collector.

Have you ever used a programming language with exclusively immutable data that didn't have garbage collector?

Try implementing one. You'll see.


> appreciate the irony of an immutable store of data needing a garbage collector for the data it's storing

I don't see how this is ironic. Do you also think it's ironic that pure functional programming languages like Haskell are garbage collected?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: