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

I think the main problem is that many developers don't think of Git as a DAG, so they don't really understand at a fundamental level what the operations are actually doing.

Once you understand this, Git really does become simple. All you have to do is map each command to the actual operation on the DAG.

This video really explains it quite well, it's the one video that allowed me to fully grasp everything: https://www.youtube.com/watch?v=1ffBJ4sVUb4



Yeah, but the question is whether a DAG is a good mental model for a VCS. Just because that's the underlying data structure doesn't mean it has to be the user interface too.


Exactly. This seems to be a point that the "Git is easy" crew doesn't understand. Not everyone (in fact, very few) find going into that depth for something that's nothing more than a tool to be reasonable. Reminds me of the Gentoo users that used to say compiling everything is a great idea for an OS.


I find that people understand "linearized" concepts easier than other kinds(DAGs included). When elements are left-to-right or top-to-bottom, you can read what is going on at a glance.

So the next major step in VCS technology will most likely do something to help linearize our views and reduce the tangling that comes into play with any tree or graph structure.


Don’t we already have that in some respects?

a) Most people’s git workflow might as well be linear.

b) rebasing a development branch onto master literally linearizes it

Where git shines though of course is where you can’t get away witha linear model


A big part of learning anything is understanding - at a fundamental level - what operations are being executed by whichever tool is being utilized.

So if you will pardon the paraphrase, I think the main problem is that many developers don’t take the time to simply learn git.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

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

Search: