Project forking workflow
Forking a project to your own namespace is useful if you have no write access to the project you want to contribute to. If you do have write access or can request it, we recommend working together in the same repository since it is simpler. See our GitLab Flow document more information about using branches to work together.
Creating a fork
Forking a project is in most cases a two-step process.
Click on the fork button located located in between the star and clone buttons on the project’s home page.
Once you do that, you’ll be presented with a screen where you can choose the namespace to fork to. Only namespaces (groups and your own namespace) where you have write access to, will be shown. Click on the namespace to create your fork there.
Note: If the namespace you chose to fork the project to has another project with the same path name, you will be presented with a warning that the forking could not be completed. Try to resolve the error before repeating the forking process.
After the forking is done, you can start working on the newly created repository. There, you will have full Owner access, so you can set it up as you please.
Merging upstream
Once you are ready to send your code back to the main project, you need to create a merge request. Choose your forked project’s main branch as the source and the original project’s main branch as the destination and create the merge request.
You can then assign the merge request to someone to have them review your changes. Upon pressing the ‘Submit Merge Request’ button, your changes will be added to the repository and branch you’re merging into.
Help and feedback
If there's something you don't like about this feature
To propose functionality that GitLab does not yet offer
To further help GitLab in shaping new features
If you didn't find what you were looking for
If you want help with something very specific to your use case, and can use some community support
POST ON GITLAB FORUM
If you have problems setting up or using this feature (depending on your GitLab subscription)
REQUEST SUPPORT
To view all GitLab tiers and features or to upgrade
If you want to try all features available in GitLab.com
If you want to try all features available in GitLab self-managed
If you spot an error or a need for improvement and would like to fix it yourself in a merge request
EDIT THIS PAGE
If you would like to suggest an improvement to this doc
If you want to give quick and simple feedback on this doc