Steep learning curve sure, but it's an extremely sharp tool that allows one to work magic once you're comfortable with it. After 1 year of git experience I could trivially do things that I never would have even attempted after a decade of CVS and SVN.
AFAIK git was initially built to be a source control engine for other tools to build on top of, but most people have just used the underlying engine since it was easier. But I've really started to grok git after using a program called lazygit [0]. Basically a terminal UI on top of git where I don't have to remember the messy language of the engine, I just need to remember a couple of keystrokes.
There are loads of UI layers over git. But largely the git cli is just better and more logical. Other than some minor weirdness, its a pretty good tool.
The GUIs never expose the full power or standard error messages that the CLI will. Had a case where gitlab was blocking a push because the master branch was protected. The git gui gave the wrong error message about why the push was rejected.
Reminds me of how Lisp’s syntax was meant to be an intermediate format, but everyone found it intuitive enough that they didn’t bother writing the planned non-sexpr language.
Hmm, can't say I agree with your second point. The industry standard version control is notoriously messy and hard to work with.