I have always considered git to be a pain in the rear. We used it cause others used it and we had to interface to them. I think "them" used it for the same reason--other people used it, not because they liked it.
If git was that good, why are people going to
spend $17 million to replace git
I can definitely respect that, but at the same time you can also turn this around: if Git
wasn't all that great then why did it gain such a massive userbase?
Now, I obviously don't know how you guys are using Git but as a die-hard Git fan(boy?) myself I can't help but wonder if it's really Git that's bugging you, or one of the many Git frontends? At the time of writing I do a lot of Python development using VS Code, and of course we're using a Git repository.
So here's the thing... I can't
stand the (severe) limitations which I experience when using the Git frontend (courtesy of the Git extension?). I also don't really appreciate the way they're "dumbing things down" (for example: "sync" vs. "pull and push (separate)". As a result I pretty much always keep a PowerShell pane (or window) open ("
ctrl + ~") and prefer to type out my commands manually.
However... those frustrations of mine are fully geared towards the plugin, but most definitely not Git itself.
Fair disclaimer... I'm not overreacting when I claim to be a bit of a fanboy... I even use Git to maintain a full retention of my server configuration(s). Even 'worse': using submodules (+ recursion!) I can even group those into a "master repository".
In other words... One repository to rule them all, and in the configs bind them! Errr, sorry about that
More seriously: I have a "master" repository on my PC which contains repositories (submodules) for all the servers I maintain. Which means... that if I'm told that we need a new virtual host on our main webserver then I can either log on and perform the changes, or ... activate & edit the Apache configuration on my PC and then push those onto the server.
This also helps us to secure and restore things... at top speed. At the time of writing a customer experienced a rather nasty issue (remote intrusion) and we re-installed the whole server. Installing FreeBSD is quick & easy, but restoring all the required configuration sections?
Also easy: we simply cloned the main repo onto the server, then cloned the submodules in the specific areas which are under Git control (like:
/etc,
/usr/local/etc/apache24,
/usr/local/logcheck,
/usr/local/openssl, etc.). And as a result we got back up & running in no time.
The fun part is that the intruder obviously had no idea, and
completely overlooked all the small
.git files (we use repo separation?), this also gave us a good idea of everything that got changed, and a collegae of mine (specialized in security) managed to trace these back to a specific rootkit.
But yah.. Git can be
so much more than just "simple version control".