Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'doc/user/project/repository/forking_workflow.md')
-rw-r--r--doc/user/project/repository/forking_workflow.md72
1 files changed, 62 insertions, 10 deletions
diff --git a/doc/user/project/repository/forking_workflow.md b/doc/user/project/repository/forking_workflow.md
index c8922890deb..33ab5f6580d 100644
--- a/doc/user/project/repository/forking_workflow.md
+++ b/doc/user/project/repository/forking_workflow.md
@@ -18,26 +18,37 @@ submit them through a merge request to the repository you don't have access to.
## Creating a fork
-Forking a project is, in most cases, a two-step process.
+To fork an existing project in GitLab:
-1. On the project's home page, in the top right, click the **Fork** button.
+1. On the project's home page, in the top right, click **{fork}** **Fork**.
- ![Fork button](img/forking_workflow_fork_button.png)
+ ![Fork button](img/forking_workflow_fork_button_v13_10.png)
-1. Click a namespace to fork to. Only namespaces you have Developer and higher [permissions](../../permissions.md) for are shown.
+1. Select the project to fork to:
- NOTE:
- The project path must be unique within the namespace.
+ - *(Recommended method)* Below **Select a namespace to fork the project**, identify
+ the project you want to fork to, and click **Select**. Only namespaces you have
+ Developer and higher [permissions](../../permissions.md) for are shown.
+
+ ![Choose namespace](img/forking_workflow_choose_namespace_v13_10.png)
- ![Choose namespace](img/forking_workflow_choose_namespace_v13_2.png)
+ - *(Experimental method)* If your GitLab administrator has
+ [enabled the experimental fork project form](#enable-or-disable-the-fork-project-form), read
+ [Create a fork with the fork project form](#create-a-fork-with-the-fork-project-form).
+ Only namespaces you have Developer and higher
+ [permissions](../../permissions.md) for are shown.
+
+ NOTE:
+ The project path must be unique in the namespace.
-The fork is created. The permissions you have in the namespace are your permissions in the fork.
+GitLab creates your fork, and redirects you to the project page for your new fork.
+The permissions you have in the namespace are your permissions in the fork.
WARNING:
When a public project with the repository feature set to **Members Only**
is forked, the repository is public in the fork. The owner
-of the fork must manually change the visibility. This is being
-fixed in [#36662](https://gitlab.com/gitlab-org/gitlab/-/issues/36662).
+of the fork must manually change the visibility. Issue
+[#36662](https://gitlab.com/gitlab-org/gitlab/-/issues/36662) exists for this issue.
## Repository mirroring
@@ -71,3 +82,44 @@ changes are added to the repository and branch you're merging into.
## Removing a fork relationship
You can unlink your fork from its upstream project in the [advanced settings](../settings/index.md#removing-a-fork-relationship).
+
+## Create a fork with the fork project form **(FREE SELF)**
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/15013) in GitLab 13.11.
+> - It's [deployed behind a feature flag](../../../user/feature_flags.md), disabled by default.
+> - It's disabled on GitLab.com.
+> - It's not recommended for production use.
+> - To use it in GitLab self-managed instances, ask a GitLab administrator to [enable it](#enable-or-disable-the-fork-project-form). **(FREE SELF)**
+
+This experimental version of the fork project form is available only if your GitLab
+administrator has [enabled it](#enable-or-disable-the-fork-project-form):
+
+![Choose namespace](img/fork_form_v13_10.png)
+
+To use it, follow the instructions at [Creating a fork](#creating-a-fork) and provide:
+
+- The project name.
+- The project URL.
+- The project slug.
+- *(Optional)* The project description.
+- The visibility level for your fork.
+
+### Enable or disable the fork project form **(FREE SELF)**
+
+The new [fork project form](#create-a-fork-with-the-fork-project-form) is under
+development and not ready for production use. It is deployed behind a feature flag
+that is **disabled by default**.
+[GitLab administrators with access to the GitLab Rails console](../../../administration/feature_flags.md)
+can enable it.
+
+To enable it:
+
+```ruby
+Feature.enable(:fork_project_form)
+```
+
+To disable it:
+
+```ruby
+Feature.disable(:fork_project_form)
+```