1. Git

Before jumping into the details of kitcar-gazebo-simulation we need to take a second to talk about workflow. Writing and maintaining a large software project with multiple collaborators is challenging. Luckily, we use several great tools at KITcar.

The Onboarding contains multiple tasks that you need to solve. You will use Git to create your branch to work on and commit your solutions to share them with others.

1.1. Create a Branch

After cloning the repository, you are on the master branch by default. The master is protected and may only be modified through merge requests. You, therefore, need to create a new branch whenever you want to make changes within the repository.

You should now open a terminal and change into the kitcar-gazebo-simulation folder. Here, your first task begins. Within the general Onboarding, you have already learned how to create and checkout git branches:

Your Task

Create and checkout a new branch with the name onboarding_<YOURNAME>.

1.2. Commit

Throughout the Onboarding, you will be asked to commit your changes. You have already learned how to use

git add


git commit

and therefore know all the basics. Please refer to How to Write a Git Commit Message on how to write nice commit messages.


When installing kitcar-gazebo-simulation pre-commit was installed as well. Whenever you commit Python code, pre-commit will check if your code complies with our style guidelines. You will not be able to commit as long as you do not adhere to the guidelines. This means that you might have to modify your code.

Why? Maintaining a clear and consistent style throughout a large software project is not easy. Pre-commit helps us to do so! (It can be annoying, we know…)

1.3. Push

Of course, everything up to this point happened locally on your computer. Don’t forget to use to

git push

to upload your changes after commiting