Re:Ask HN: Can we do better than Git for version control?
by mejutoco on Monday December 11, 2023 @03:59AM
(#38598845)
We could get aliases that get slowly incorporated into git. Like, let's say git undo instead of git reflog, or things like that. It would not be too difficult to support a couple of names to do the same thing and let people use the one they prefer.
Re:Ask HN: Can we do better than Git for version control?
by jampekka on Monday December 11, 2023 @05:19AM
(#38599231)
We are slowly getting those. For example there's now git restore (and git switch) to fix the god-awful overloaded checkout.
When you get your repo into a state that needs reflog, it's probably not amenable to very straightforward commands. A bigger problem is that it's a bit "too easy" to get into that kind of state.
The original git interface wasn't really intended for "general use" and there was supposed to be the friendlier "porcelain" on top of the lower level "plumbing". But people started to use the plumbing directly and the porcelain never came to be.
There's a lot of "useless" complexity in the Git UI. The naming of the commands and the underlying concepts are quite inconsistent. The commands themselves are inconsistent. It's rare to see somebody, even git fans, to dispute that the UI is far from optimal. And the warts in the UI are being improved.
These UI warts start to become invisible when you get used to them, but e.g. when teaching git they become painfully obvious again.
The underlying git architecture is simple and it's the simplicity that makes git powerful. Powerful tools don't necessarily need complex interfaces. In fact power often comes from simple interfaces that compose well.