Why learn an archaic and honestly horrifying command line interface, possibly the worst CLI ever made in the history of computing…when nice normal graphical interfaces work better, have discoverability, have troubleshooting tools, and don’t require memorizing scripture?
There’s nothing ‘archaic’ about git’s CLI. I think you might just be opposed to CLI’s in general, which is fine for a regular computer user, but paints a grim picture of your competency if you’re a developer.
I find the built in controls with visual studio supremely convenient.
After using git init --bare for the remote repo I use the built in git controls for branching and switching out as well as syncing and pushing. Why not, the button is right there and it’s literally faster.
Why learn a GUI that can change from release to release when I can learn a CLI once and be done with it. An additional plus is that CLIs are easier to script and automate.
Because they are universally incapable of coming anywhere close to the full power of git.
I can’t tell you how many times I’ve had GUI-only people ask me to unfuck their repo (fortunately not at my current job, because everyone uses the CLI and actually knows what they’re doing). It’s an impedance to actually learning the tool.
Ultimately any GUI is a poor, leaky abstraction over git that restricts many of the things you can do for little actual benefit.
As someone using git for the last 10 years by now: you’re wrong. No UI has managed to give me access to all the fuckery I often do very quickly on the command line. I was honestly surprised to see IntelliJ nowadays supports an interactive rebase, but reflog, which should be a basic git feature, is still not widely supported in most IDEs in 2025. Or adding, resetting or checking out files with regex. Setting up and modifying lfs. And these are all basic features, good luck doing something like using branch~n syntax for some of the operations etc.
The fact that you don’t already know why and are dependent on GUI tools that you don’t fully understand is the reason that you’re probably not a very good developer.
Git is incredibly powerful. Knowing why and how is infinitely valuable. Nothing about git cli is archaic or even particularly difficult to understand. Also the man page is very excellent.
Your lack of rational thought backed up by facts rather than feelings is why you’re a bad developer.
See I can do it too.
But honestly even saying “nothing about the git cli is archaic” is…well, it’s either disqualifying or Stockholm syndrome, and Stockholm syndrome isn’t real.
Why learn an archaic and honestly horrifying command line interface, possibly the worst CLI ever made in the history of computing…when nice normal graphical interfaces work better, have discoverability, have troubleshooting tools, and don’t require memorizing scripture?
There’s nothing ‘archaic’ about git’s CLI. I think you might just be opposed to CLI’s in general, which is fine for a regular computer user, but paints a grim picture of your competency if you’re a developer.
That seems unnecessarily harsh.
I find the built in controls with visual studio supremely convenient.
After using git init --bare for the remote repo I use the built in git controls for branching and switching out as well as syncing and pushing. Why not, the button is right there and it’s literally faster.
Why learn a GUI that can change from release to release when I can learn a CLI once and be done with it. An additional plus is that CLIs are easier to script and automate.
Mate… Theres maybe like 5 “git + singleword” commands that cover 99.999% of all of your uses of git. Its really not hard.
Most cli stuff is a lot easier than programming. If you can’t use cli then by definition you’re a shit programmer.
Of course if you simply don’t want to use cli that’s a different matter.
Because they are universally incapable of coming anywhere close to the full power of git.
I can’t tell you how many times I’ve had GUI-only people ask me to unfuck their repo (fortunately not at my current job, because everyone uses the CLI and actually knows what they’re doing). It’s an impedance to actually learning the tool.
Ultimately any GUI is a poor, leaky abstraction over git that restricts many of the things you can do for little actual benefit.
As someone using git for the last 10 years by now: you’re wrong. No UI has managed to give me access to all the fuckery I often do very quickly on the command line. I was honestly surprised to see IntelliJ nowadays supports an interactive rebase, but reflog, which should be a basic git feature, is still not widely supported in most IDEs in 2025. Or adding, resetting or checking out files with regex. Setting up and modifying lfs. And these are all basic features, good luck doing something like using branch~n syntax for some of the operations etc.
Git UI is shit and will be for a long time.
The fact that you don’t already know why and are dependent on GUI tools that you don’t fully understand is the reason that you’re probably not a very good developer.
Git is incredibly powerful. Knowing why and how is infinitely valuable. Nothing about git cli is archaic or even particularly difficult to understand. Also the man page is very excellent.
Ah, the no true Scotsman fallacy. Neat.
Your lack of rational thought backed up by facts rather than feelings is why you’re a bad developer.
See I can do it too.
But honestly even saying “nothing about the git cli is archaic” is…well, it’s either disqualifying or Stockholm syndrome, and Stockholm syndrome isn’t real.