Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

This document explains how to use version control for the Resilient Hydro Twin platform. It covers repository structure, branching workflow, contribution guidelines, and best practices for GitHub usage.

0. Repository Overview

The project currently uses:

For the people collaborating on the project outside TU/e, they will only have access to Github repo.

1. Getting Started with Git & Github

Install git

First step is to install git.
https://git-scm.com/install/windows

After installation, you can check if git is successfully installed by running the following command. In this document, any command that is mentioned can be run in the terminal for MacOS or CMD - command prompt in Windows.

git --version

Create or Access GitHub Account

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

By running these commands git will know who is doing the changes, commits etc.

There are some alternative ways to access Github. I can recommend accessing by using SSH keys. You can also use Github Desktop. For the SSH key method you need to first generate SSH key:

For detailed description check Github Documentation Link:

ssh-keygen -t ed25519 -C "your.email@example.com"

This command will generate two files id_ed25519 and id_ed25519.pub. The first one is your actual key, dont share it with anyone. The second one is the public part of your key. You need to access this and copy, paste into Github by going GitHub → Settings → SSH and GPG Keys → New SSH key

To test the connection:

ssh -T git@github.com

Cloning the RHT Repository

At this point, if you joined the Github Repo of RHT you can clone (copy the files) into your local environment (ie. laptop).

git clone git@github.com:ISBE-TUe/resilient-hydro-twin.git

After doing this you can go inside the resilient-hydro-twin folder and check the files.

git clone https://github.com/ISBE-TUe/resilient-hydro-twin.git

Now you can access this folder by using any IDE (recommended PyCharm).

2. Branching Model

The project follows a feature-branch workflow.

Main rules

Branch naming conventions

TypePrefixExample
New featurefeature/feature/pdok-basemap-selector
Bug fixfix/fix/docker-volume
Documentationdocs/docs/api-endpoints

3. Creating a Feature Branch

Steps

  1. Ensure main is up to date:

git checkout main
git pull
  1. Create and switch to a new branch:

git checkout -b feature/<short-name>
  1. Commit changes regularly

  2. Push branch to remote:

git push --set-upstream origin feature/<short-name>

4. Merge Request / Pull Request Workflow

Steps to merge feature branch into main

  1. Finish feature work and commit changes

  2. Push to remote

  3. Open Pull Request (GitHub)

  4. Assign reviewers

  5. Resolve comments and pass checks

  6. Reviewer merges into main

Merge rules

git checkout main
git pull
git merge feature/<name>

5. Best Practices