Speaker Giving a Talk at Business Meeting.

Version Control using Git and RStudio

Course description

This course introduces Git, the essential version control system for modern, reproducible, and collaborative research. Designed for researchers who write code, this hands-on course teaches you how to track changes in your projects, restore previous versions, and work effectively with collaborators. You will learn to manage your entire workflow using Git's powerful features, primarily through the user-friendly graphical interface of RStudio but also introducing the according command line options. You will learn the basics of how to get started with Git and will achieve a basic understanding of how Git works. Further, you will learn how to include remove servers like Gitlab or Github in your workflow. 

 

Target Audience

Researchers who write code or manage digital research projects and want to learn how to use version control to improve the organization and reproducibility of their work. This course is designed for applied researchers with no or low previous knowledge in using Git.

 

Topics

The course covers the fundamental workflow of version control:

  • Foundations of Version Control:
    • Why version control is critical for reproducible research.
    • Configuring Git and initializing a local repository for a new project.
  • Tracking a Project's History:
    • The core linear workflow: staging (add) and saving (commit) changes.
    • Viewing a project's history to understand and revert to previous versions.
  • Working with Branches:
    • Using branches to develop new features or test ideas in isolation.
    • Merging branches to integrate changes back into the main project.
  • Collaborating with Remote Repositories:
    • Connecting a local project to a remote service like GitLab or GitHub.
    • Synchronizing changes using push and fetch/pull for backup and collaboration.

 

Methods

The course consists of lessons on how to use Git and hands-on examples with best-practice solutions.

 

Learning Goals

At the end of this course, you will be able to:

  1. Explain the core principles of version control and set up Git for a new research project.
  2. Use the fundamental Git workflow (add, commit) to track changes in your code and documents.
  3. Create and merge branches to manage different lines of development safely.
  4. Connect a local repository to a remote service like GitLab to back up and share your work.

 

Prerequisites

Basic programming skills in any language (e.g., R, Python) are recommended. No prior experience with Git or version control is required.

 

Format

  • Duration:  either 1 full day or 2 half days
  • Language: English
  • This course will be offered either on campus (in person), or online.
  • For online courses we use the software Zoom.

 

Dates and Application

  • Courses provided for Helmholtz Munich:
    • You can check the current dates and whether the courses are already fully booked here*.
    • Please read the corresponding FAQ* before applying via the forms of the HR Development department*.

 * Links marked with * are only available for Helmholtz Munich staff.