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:
| Branch | Description |
|---|---|
main | This 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.