How to Contribute Locally

To contribute to the handbook locally and commit your changes, follow these steps below.

Steps to Contribute

Set up an SSH key for GitLab

If you haven’t already set up an SSH key, follow the instructions provided by GitLab to create one and add it to your GitLab account

Install Git and clone the appropriate repository

Clone the content repository to your local machine using Git. Don’t have git installed locally?

If you encounter permission issues when cloning the repository, try including your GitLab username in the URL. For example:

Replace your-gitlab-username with your actual EBRAINS GitLab username. When you run the command, you’ll be prompted to enter your password. For authentication, use your personal access token. You can create one here

Understand the Branch Structure

The content repository has only one main branch:

BranchDescription
mainThis branch is used for production purposes, and no merge requests are allowed directly to it. Only the repository owner and maintainers can merge changes directly into the main branch.

Create a New Branch

Contributors must create a new branch following the naming convention feature/handbook/{the card reference} from the main branch and make all changes there. To get the card’s ID, a GitLab issue should exist.

Navigate to Application

From root

navigate to application

Update Content

Use your preferred editor to make the necessary changes to the documentation.

See your Changes (optional)

Follow the instructions here first to enable the monorepo commands and install the appropriate packages.

Commit your changes

Follow the instructions on how to commit your changes succesfully.

Push Changes to GitLab

After making changes, push your new branch to GitLab.

Create a Merge Request

Open a merge request (MR) from your feature/handbook/{the card reference} to the main branch. Assign the maintainers as reviewers for the merge request.

Address Pipeline Errors (currently disabled)

The repository enforces basic markdown styles using lint checks markdownlint If there are inconsistencies in the markdown, the pipeline will throw errors. Read the job errors, try to fix them, and push the changes again until the pipeline succeeds.

Merge to Main

Once your changes are approved by the maintainers and the pipeline passes, the changes can be merged into the main branch.