diff --git a/doc/workflow/README.md b/doc/workflow/README.md index 6e70235f5b88c429075bb660ea62a97381cfceda..7e3fc49f704fda79bba8ec7932dcbf70e11a2abc 100644 --- a/doc/workflow/README.md +++ b/doc/workflow/README.md @@ -1,6 +1,7 @@ # Workflow - [Feature branch workflow](workflow.md) +- [Code forking workflow](forking_workflow.md) - [Project Features](project_features.md) - [Authorization for merge requests](authorization_for_merge_requests.md) - [Groups](groups.md) diff --git a/doc/workflow/forking/branch_select.png b/doc/workflow/forking/branch_select.png new file mode 100644 index 0000000000000000000000000000000000000000..275f64d113baa4800fe6a49c366d5bb3c1237068 Binary files /dev/null and b/doc/workflow/forking/branch_select.png differ diff --git a/doc/workflow/forking/fork_button.png b/doc/workflow/forking/fork_button.png new file mode 100644 index 0000000000000000000000000000000000000000..def4266476ad23531e7299ace79fa4e999b3d94c Binary files /dev/null and b/doc/workflow/forking/fork_button.png differ diff --git a/doc/workflow/forking/groups.png b/doc/workflow/forking/groups.png new file mode 100644 index 0000000000000000000000000000000000000000..3ac64b3c8e746317376a7e0c6fa2b1df9e7a4569 Binary files /dev/null and b/doc/workflow/forking/groups.png differ diff --git a/doc/workflow/forking/merge_request.png b/doc/workflow/forking/merge_request.png new file mode 100644 index 0000000000000000000000000000000000000000..2dc00ed08a1df18629be937740f32ef35abbb87f Binary files /dev/null and b/doc/workflow/forking/merge_request.png differ diff --git a/doc/workflow/forking_workflow.md b/doc/workflow/forking_workflow.md new file mode 100644 index 0000000000000000000000000000000000000000..32cee3e4f3c7c3253e96eb750ba63ce8bc857a39 --- /dev/null +++ b/doc/workflow/forking_workflow.md @@ -0,0 +1,33 @@ +# Code 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, we recommend using the **[Code Branching Workflow](https://about.gitlab.com/2014/09/29/gitlab-flow/)**. + +## Creating a fork + +In order to create a fork of a project, all you need to do is click on the fork button located on the top right side +of the screen, close to the project's URL and right next to the stars button. + + + +Once you do that you will see a screen where you can choose the namespace, to where you want to add the fork. This page +will contain the groups you have write access to. Choose one of the groups and the project will be added there. + + + +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 so they can review your changes. After they have reviewed them, the will +be added to the main project, if maintainer chooses to do so. + + + +