Git must be learned on console

I've done a lot of git in my developer life. I taught people how to use git and tried to repair the damage modern GUI systems did to those people. Why damage? Because if you learn git with GUI tool like in an IDE you don't learn it properly.
Open Git Console on desktop pc

Most GUIs are not suitable for git

Every GUI tries to hide some aspect of git to make it "more user-friendly", but this comes at a cost. The price you have to pay is that certain features are hidden, reversed or combined, and if something breaks most people who learned this via GUI, have no clue why it broke.

The Command Line

The command line is git's natural habitat. It is how it was initially used and still works best. Why do I think that? Git has a certain workflow. That can only be recognized and deeply understood if you used the commands for this workflow. Some examples: You can really the dots between the working directory, the staging area and the repository if you are forced to use "git add" and "git commit" and see the differences between these stages. Another example is PHPStorm feature "Update Git". Modern IDEs try to mask this behaviour behind these commandos. * Update works for all roots * Update does fetch and merge/rebase and does not consider git.config at all So this can cause bigger problems than intended.

When to use the GUI

If you are confident in Git: Please use the GUI. You have probably a lots of experience fixing stuff and know what is happening there. I use GUIs often to rebase my branch to a certain level, via a visualized tree. I've often a better overview, where my commits and branches are which is pretty neat.
If you are new to Git: Please use the command line. You will learn faster, you will understand git, and you will be able to help others, that learned git via GUI. And there are already to many people out there, built a skill that is often needed and learn to git.

All rights reserved Β© Niels Theen