Version control - introΒΆ

Each and every project depends on a large amount of files, no matter if documentation, notes or analyses scripts. All of them will change more or less prominently during the project and your research workflows: updates, deletions, etc. . If not taken care of, all these changes to all these files can result in tremendous problems concerning data management and reproducibility. Just imagine you’re trying out a few new things in your analysis scripts and after trying to rerun the things you did some days ago nothing works anymore… At what point did you change what aspects, when did it break, what happened? What keeping track of changes, there’s no way to recover this information.

data standardization

What most folks is to have multiple versions of the same files simultaneously, using file names to indicate or refer to a certain status. However, this is very cumbersome and also prone to errors. A fantastic alternative is to use an approach called version control that allows you to keep track of changes to basically any file, recover previous versions, collaborative editing and much more. Within this session, we will discuss the basics and start to explore one of the central tools, git, as well as resources that build upon it, i.e. GitHub.

Content πŸ’‘πŸ‘©πŸ½β€πŸ«ΒΆ

In the following you’ll find the objectives and materials for each of the topics we’ll discuss during this session. The main materials will be a slide deck that entails the respective information and practical hands-on sections.

Objectives πŸ“ΒΆ

  • Learn about Version Control Systems

  • Learn about Git

  • Get first experience working with Git:

    • creating a new repository

    • adding and modifying files

    • working with branches

  • Learn about remotes and GitHub

Materials πŸ““ΒΆ

You can find the slides here or download them directly.

As with the remaining sessions, the recording will be added in a bit.

Questions you should be able to answer based on this lecture πŸ–₯οΈβœπŸ½πŸ“–ΒΆ