I personally think that git is a very complicated tool. To be honest, even after working with it for several years (2 of those in a professional context), I still have not understood it completely. For me, the mental load of representing the git repository in my head is huge, especially when multiple collaborators and branches come in. This is why this workshop does not rely on the - often praised - command line Git interface. While there are many “power users” who are very efficient in working with the CLI (I admire them!), I personally am not and I do not think the command line is the best place for beginners to start their Git journey. Especially when they are not super tech-savvy. This is why I choose to use tools that allow for a point-and-click interaction with Git and offer a visual and interactive representation of the git tree.
- Repository for slides and installation requirements: https://gitlab.com/friep/git-our-shit-together
- Toy repository for hands-on sessions: https://gitlab.com/friep/git-our-shit-together-test-repo
There are several versions of this talk. The slides are hosted on a separate netlify site.
- CorrelAid Data Science for Society Kickoff, April 2018: in German, using GitHub and Gitkraken. 1
- RLadies Frankfurt Meetup: in English, using GitHub and Gitkraken.
- CorrelAid Germany Meetup, December 2019: in English, using GitLab and VSCode.
Why not GitHub?
The old versions of this talk were done using GitHub. However, I migrated from GitHub to GitLab in November 2019. You can read my explanation for this move here.
Still, I see that GitHub is (still) the most important and widespread Git provider. This is why I also touch on GitHub-specific aspects (e.g. pull requests) in the new version of the talk. If you insist on “learning” GitHub, you can check out the older versions of this talk (but keep in mind the Gitkraken issue, see next point).
Where did Gitkraken go?
For previous versions of this talk, I used the Git GUI Gitkraken. Gitkraken is an excellent GUI which makes it very easy to understand Git and to interact with it in an efficient manner. I use it for my professional job every day and I am very satisfied with it.
Sadly, around late September 2019, Gitkraken - very silently - changed their pricing scheme. While the free tier still exists, it does not allow for opening private repositories. This renders Gitkraken basically useless when used with the free tier as at some point in their Git journey, almost every user needs to do something in a private repository.
This is why I made the switch to open source tools, namely VSCode, its Git integration and the excellent GitGraph extension. Let’s hope they stay open source and free! 🙏
I am very disappointed by this move by Gitkraken because it was and still is a great tool for beginners. But I will not teach something that not all of the participants will be able to use for free (you can get Gitkraken for free if you’re a student).