3 ms·
I don't think git is hard at all, it's lightweight and elegant, and quite frankly, extremely logical to understand.. Sure, the syntax can be hard to grasp at fi
by dusted 6y ago
I don't think git is hard at all, it's lightweight and elegant, and quite frankly, extremely logical to understand.. Sure, the syntax can be hard to grasp at first, but that's a reasonable price to pay for brevity tbh.
- eru 6y agoThe syntax is also a bit inconsistent, and reflects git's own development history. We could probably make a new and better command line interface that brings out the underlying simplicity more.
- pizza234 6y agoIt's important to distinguish the UX from the internals. I don't know the internals, so they may be elegant and extremely logical, but the UX is terrible. Git's UX, like a famous programming language, was never designed in a strict sense. It's clearly been written to solve immediate requirement, one by one, without a vision (again, from a UX perspective). Result: the horrible checkout command, which does a zillion different things, and I bet only few users know all of them. Same goes for reset. I don't remember all the checkout forms, and I couldn't use git without aliases. The porcelain interface is another one. Excerpt: This is my fault, to some degree. The "short-status" form is meant for human eyeballs, and was designed by Junio. Some people wanted a scriptable status output, too, so I slapped a "--porcelain" on the same format that turns off configurable features like relative pathnames and colorizing, and makes an implicit promise that we won't make further changes to the format. The idea was to prevent people from scripting around --short, because it was never intended to be stable. So yeah, while --porcelain by itself is stable and scriptable, it is perhaps not the most friendly to parsers. The "-z --porcelain" format is much more so, and I would recommend it to anyone scripting around "git status" Note the "slap" here; it's not random.