The preferred method of contributing patches to Exherbo is via the new Gitlab instance. It replaces the Gerrit instance we had used before.
First of all you will have to create an account on our Gitlab instance. Do note that other Gitlab accounts (e.g. ones created on Gitlab.com) won’t work. Creating one on our instance of Gitlab is pretty straight forward:
Go to Gitlab’s frontage after you’ve signed in and search for the repository you want to clone. Click on its name to open it.
Click on Fork.
Clone your fork of it, e.g.
git clone firstname.lastname@example.org:<user name>/<repository>.git.
If you already cloned the repo you can add your fork as remote, e.g.
git remote add my-fork email@example.com:<user name>/<repository>.git
master. This is required because
masteris a protected branch on Gitlab by default, which means one can’t force push to it.
git push <fork-remote> <branch>. Do note that the remote will be
originif you cloned your fork directly and the name you supplied to
git remote addif you added it as remote yourself.
Allow edits from maintainers. This allows core devs to rebase your merge request, which is required for fast-forward merges if HEAD has changed since you had submitted your merge request.
You should always ensure that you have the latest version of the repository you want to work on before starting your work to avoid duplicating work and merge conflicts. You can do so with:
git pull <exherbo-remote> master --rebase
In case you’re still unsure on how to use Gitlab you can checkout Gitlab’s superb documentation.
Copyright 2018 Rasmus Thomsen