Choose name when Forking
Problem to solve
As a regular contributor to an open source project like
gitlab-org/gitlab-ce, I have a public fork
john/gitlab-ce from which I contribute improvements. Sometimes I want to work from a private fork
john/private-ce when I need to fix a security issue and I can't work on it publicly. Or I might just be nervous about having my really bad WIP branches being public.
Currently this is possible using the API, or via an inconvenient workflow involving forking to a group, renaming and moving to my own namespace.
Streamlining the security release process for public projects is the primary motivation for making this easy. A developer who is going to resolve a confidential security issue, needs to be able to create a branch in a private fork. If a public fork already exists, this workflow is obstructed.
Another common use case is a template project that I want to create forks from, so that I can merge changes between projects since they are related.
I propose a change such that:
- the initial name of a fork can be changed before the fork is performed.
- if the chosen name exists in the target namespace
- then disallow forking (existing behaviour)