4 ms·
> Wouldn't that apply to git? You can probably get 90-95% of the benefit of git using mercurial with a fraction of the effort in learning. Life is too short to
by thethirdone 7y ago
> Wouldn't that apply to git? You can probably get 90-95% of the benefit of git using mercurial with a fraction of the effort in learning. Life is too short to spend learning the internals of one version control system.
I haven't used mercurial much, but it seems like you would have to understand the same amount about the core data structures to do something in mercurial as with git [0]. The really simple activities you do day to day don't require any deep knowledge. And when you want to do more complicated things you have to know what you are doing.
Its similar to writing simple C++ programs vs complex ones. You may not need to understand smart pointers to write small programs, but understanding smart pointers or at least the concepts behind them is critical to write large programs.
[0]: There are minor differences between the two that probably make git harder to pick up. Among them being the staging area, and rather obtuse UI. However, the market effects of git are hard to ignore.
- joshuamorton 7y agoI'd disagree a bit here: mercurial does a much better job of abstracting over the underlying data structures. Git is a DAG navigation tool that can diff text, and the API shows it. Mercurial is a version control system that happens to abstract over a DAG. The API, similarly, shows it.
- thethirdone 7y ago> Git is a DAG navigation tool that can diff text, and the API shows it. That seems like a relatively accurate characterization. > Mercurial is a version control system that happens to abstract over a DAG. The API, similarly, shows it. I am unfamiliar with the details of mercurial. Could you explain or link to something detailing that point?