DEV Community

Discussion on: Git is one of the most brilliant pieces of software ever written...And other opinions on git

Collapse
 
leob profile image
leob

I think that what makes Git so great is its flexibility, but that this flexibility is based on a very small number of well-conceived concepts. All of its capabilities, simple and not so simple, are built on top of that small set of concepts - no matter how many commands there are its basis (core) remains simple.

And have you ever thought about how extremely reliable Git is? It's possible to "lose" a change by making a blatant mistake but I've never encountered a situation where something was lost or went wrong because of the software itself. It's a piece of software that works, and works extremely well.

When there's criticism of Git it's most often targeted at ease of use, the commands (naming etc) not being intuitive, etc. However the number of commands that you'll actually use day to day is small and it doesn't take a lot of time to get familiar with them.

Ever noticed how the git command line even guides you with helpful messages regarding what "git reset HEAD" and "git checkout -- " do?

Personally I use bash aliases a lot so I just type 2 or 3 letters to issue the most used commands.

One thing I'll grant is that some concepts are quite confusing, after using Git for years I'm still getting confused about the difference between "merge" and "rebase". On the other hand in 99% of the (basic) use cases you can get by with basic commands, I'm not even using most of the 'power tools' in Git (advice for novices: just stick with 'merge' to stay on the safe side).

Maybe they should add a "--novice" or "--expert" switch to the Git command line?