Git === Git, Gitlab and Github ---------------------- Please read and understand the following questions: - What is the difference between Git, Gitlab and Github? - What is the main goal of Git? - What is Version control? - What are the benefits of using Version Control System? .. important:: Take 30 minutes to research and answer the questions, then discuss them with your coach. Install Git ----------- Our Gitlab runs on `gitlab.confirm.ch _`. There is a Graphical User Interface that we can use to create Repositories, Issues and more. However as a developer we tend to use the local CLI to interact with our server. Therefore install `git `_. Make sure git is installed by entering this command in the terminal. .. code-block:: bash git --version Gitlab Security (2FA/SSH Keys) ------------------------------ Git is the core storage system and version control in our and many other It companies infrastructure. Git has made some core security criterias that have to be solve befor you can pull/push a Repository. Here are two criterias you have to finalize: - Enable Multi Factor Authentication - `Add your SSH key `_ to your account on Gitlab - `Create an SSH key `_ if you don't have one on your machine Git exercises ------------- Now that you have your Git installed go on `w3schools `_ and do the tutorial. .. important:: Estimate how much time you need to research, then discuss your new knowledge with your coach. Take a look at our :ref:`Git Guidelines `. It's important that you make yourself familiar with the Guidelines. Without following the guildlines you will have problems with committing, pushing and more... .. todo:: **Trainee DIY onboarding:** We need to describe Git & define the Git tasks. Add hints to :ref:`Git Guidelines `.