Lecture Overview

Introduction

This course

  • Idea
  • Format
  • The exercises

The topics

  • Practical skills
  • Understanding the system
  • Understanding usage

The lecturers

  • DKRZ
  • MPI-M

The students

  • Who needs a grade?
  • Who is experienced with git?
  • Who has used an HPC system before?
  • Which programming languages do you speak?
  • What is missing in our lecture concept?

Course materials

  • The source of the slides is public
  • Cookies

The command line

Shell

  • Built-in commands
  • Coreutils - GNU core utilities
  • Text editors
  • Scripts
  • Take home messages

Hands-on session

Levante

  • Configuration
  • Working on Levante
  • SSH
  • Public keys
  • Generating SSH keys
  • Configuring SSH
  • Remote file transfer
  • Remote file transfer
  • Three parts of the file system
  • Compute nodes
  • Take home messages

Hands-on session

Shotgun buffet

  • IDEs
  • tmux
  • X-forwarding
  • YubiKey

References

Git

Version control systems

  • Why version control?
  • Git
  • As easy as 1, 2, 3
  • Sequence of snapshots
  • The basic workflow
  • Configuration
  • Hands-on Session

Branches

  • Create a branch
  • Merge a branch
  • Hands-on session
  • Conflicts
  • Conflicts
  • Solving conflicts

This course is nice!

  • Solving conflicts
  • Hands-on session

Best practices

  • Best practices

Remotes

  • Merge request on GitLab DKRZ
  • Hands-on session
  • Take home messages

Shotgun buffet

  • Rebase vs merge
  • Forks
  • Tools for graphical merge

Further reading