ATLAS Software Git Workflow

Last update: 05 Jul 2023 [History] [Edit]

Introduction

These web pages describe how to work with ATLAS offline code hosted in the git version control system.

If you have no experience with git at all, it’s worth checking out our collection of links in the Help with git section before anything else. There you’ll find a getting started guide for git itself and a leg up from SVN.

As well as using git as the source control management program, ATLAS uses the GitLab service at CERN to provide web based code management, and so we also suggest some GitLab bootstrap links.

Warning On the 17th December 2018, ATLAS updated the Athena repository to make it public and open-source. If you are an ATLAS member and have forks or clones from before that date, please look at the instructions on the twiki

Workflow Overview

Before starting to follow each step of the workflow in detail, it’s useful to have an overview of the whole process, uncluttered from all minutiae. That’s what we give here, so refer back to this page if you start to lose a sense of where you are overall or why you are doing what you are doing.

In a Nutshell

  1. Get your own copy of the offline code from GitLab
  2. Develop, test, develop, retest, … until you are happy
  3. Commit your code and push it back to GitLab
  4. Create a merge request that asks for your code to be added to the main repository
  5. Continuous integration runs to test your changes, a human being checks your code - when there are no problems with your code, the merge is accepted and your code has been integrated

The Tutorial

You should start the detailed tutorial by setting up your environment and then following the rest of the material.

There is also a quick workflow section covering the most important steps of ATLAS code development (but lacking a lot of the explanations we give in the main tutorial).