Hello, thank you for being here!

This tutorial is intended as an introduction to the most useful features of Git and GitLab. It is basically what I wish I had been taught, no less, no more, when I started working on collaborative software projects. It is meant to teach you everything you have to know for efficient software project management and safe collaborative development without scaring you!

I firmly believe that working on software projects, even for small-team researchware, without Git and/or GitLab is basically a waste of time and resources, and leads to a terribly error-prone development process.

On the other hand, I remember all these hours that I spent exploring Git and GitLab, making workflow choices that would prove inefficient and/or plain dumb, using Git from a terminal to carry out actions that can be done from GitLab in a few clicks, and feeling overall pretty confused about how this whole mess should be used in the first place.

Git by XKCD

This is the step-by-step guide that I wish I had been provided when I discovered Git and GitLab. It starts from the very beginning (that is, installing Git and configuring your GitLab account), and holds your hand until you know all the tools you need to efficiently maintain your development projects.

Table of contents

You can go through this tutorial in order, in which case I advise you to practice at the same time. Everything starts here. (At some point, you should also make sure that you are aware of some basic development practices.)

If you are already somewhat accustomed to Git and GitLab, you may also directly skip to the parts that you wish to read. Here is a nice table of contents for you:

In any case, please do not hesitate to contact me for any (constructive) criticism, requests or suggestions you may have. Enjoy!


Future improvements

For any suggestion you may have, please do not hesitate to send me an e-mail.