Git our sh*t together

Information about my Git for beginners workshop series

Introduction

The Git our sh*t together (gost) workshop is an introductory workshop on Git and GitLab using the VSCode Git integration and the GitGraph VSCode extension.

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.

GitLab Repos

Slides

There are several versions of this talk. The slides are hosted on a separate netlify site. Please see the talks page.

FAQ

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! :pray:

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).

License

All the material is licensed under the CC BY-NC 4.0 license. Attribution can be made in the form of a link to the repository or this website.

Corrections

If you see mistakes or want to suggest changes, please create an issue on the source repository.

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY-NC 4.0. Source code is available at https://gitlab.com/friep/blog, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".