Welcome to the Introduction to version control with Git! for Eindhoven University of Technology, on 25th June 2025. This repository contains instructions for the one-day hands-on workshop focused on version control with Git, collaborative best practices, and getting to know 4TU.ResearchData.
Links:
- Mentimeter Git Intro- https://edu.nl/cma84
- Collaborative notes- https://edu.nl/htaw9
This workshop is designed to introduce participants to Git and version control, helping them to:
- Set up and manage a local and remote Git repository.
- Track changes, collaborate, and resolve conflicts effectively.
- Use 4TU.ResearchData repository for their research outputs.
| Day | Time | Session |
|---|---|---|
| Day 1 | 09:30–10:30 | Creating and managing a local Git repository: creation, configuration, add-modify-commit cycle |
| 10:30–10:45 | Break | |
| 10:45–11:30 | Navigating the history of changes | |
| 11:30–12:30 | Setting up a remote server to work remotely with Git (SSH key setup) | |
| 12:30–13:30 | Lunch | |
| 13:30–14:30 | Types of collaborations and good practices for collaboration: • Start a project and invite collaborators (instructor-led demo) • Create branches to avoid push errors |
|
| 14:30–14:45 | Break | |
| 14:45–15:30 | Contribute to an existing project (in pairs): • Create issues • Fork, edit, and propose changes via pull requests • Merge if possible |
|
| 15:30–16:00 | Conflict management (demo: changing the same line in a file) | |
| 16:00–16:30 | Introduction to 4TU.ResearchData |
Before attending the workshop, please ensure you have:
- A GitHub account (sign up here)
- Installed Git on your system (installation guide)
- A terminal or Git Bash (Windows users should install Git for Windows)
- A basic understanding of Unix shell commands. See here
-
Deep conceptual understanding (the CLI forces you to perform each Git operation explicitly, so you see exactly how things work, whereas GUIs often bundle actions behind buttons, obscuring the underlying mechanics.)
-
Environment-agnostic skills (the Unix-shell CLI is consistent across Linux, macOS, Windows (via WSL) and remote/headless systems(HPC servers), while each GUI client has its own interface and may not be available in all environments.)
-
Scriptability for reproducibility and automation: (CLI commands can be composed into scripts or integrated into automated pipelines—key for reproducible research)
-
Git Lesson: Introduction to Git, tracking changes, and collaborating on research projects.
This workshop material is licensed under GNU AFFERO GENERAL PUBLIC LICENSE Version 3. Feel free to share and modify the lesson according your needs.
This workshop is based on the Software Carpentry Git curriculum.