As in Issue #2772 stated there should be an option to move existing groups into other groups.This would make reorganizing large groups to a group/subgroup structure much easier and avoids moving hundreds of projects manually.
Proposal
Allow groups and subgroups to be transferred around between other groups:
From the issue #29919 (moved) I created with webdev.comon:
Allow groups / subgroups to be transferred to other groups / subgroups.
User case:
Existing groups that were segmented by client.
Proposal
When editing groups / subgroups, you should be able to select a top level group minimum.
For complex scenarios, ie, multiple nesting, add a advanced options link that turns the group path rename box into a textfield, where you can manually input the full path.
GitLab should check if the path is valid and if the user is owner of the parent group.
Example:
group1
->
group2/subgroup1/subgroup2
Should verify that the user is a owner of subgroup1.
When we first started using gitlab almost a year ago, subgroups was one of the only missing gitlab features. Our main issue was with accessibility (all restricted) and user management. Having to add every user to numerous groups or even projects (of which there are hundreds) was just not feasible, which is why we went with around 10 relevant groups, each containing many individual projects consisting of several repositories. Now that gitlab 9 brought solid support for inherting access, we'd like to adapt our existing organisational structure. (e.g. move group EngineeringStandards to EmbeddedDevTeam/Engineering Standards)
The general proposal looks fine for our use case, but my main concern is braking old links/code when moving projects. We've had this happen a lot in the beginning, when we were still experimenting with group and project names. Dead links would just result in a 404, without even a hint that the project might have been moved/renamed.
Which is why I think such a moving feature should have support for both or either:
a) "burning" old project paths, making them static paths to the moved project
b) redirecting to a semi-intelligent search page, that suggests a search string based on the project name
We have about 20 groups now in local gitlab instance, each containing subsets of our developers.
We are now trying to integrate new gitlab features such as the issue boards, but it's very hard to keep track of 20 boards, or set up a milestone involves features from different groups.
We need either issues, milestones and boards shared among all our gitlab instance, or to move all our groups inside another new group. And manage it all from there.
Probably the second option is easier and makes more sense.
Also, having the option of not changing the git url of the repositories when transferring would be great, because we have around 500 repositories that we'd have to rename.
We have almost 500 projects distributed across 34 groups. I just figured we could really benefit from having these 34 groups distributed among 3 root groups. Doing it by hand would be extremely tedious.
as this doesn't seem to be on any roadmap (no target version), could someone provide gitlab-rails commands to move projects from one group to another, or reparent existing group under another?
This makes a lot of sense since the addition of group-level secret variables. We'd like to use it to factor secret variables on multiple existing project sets
Initially when there are no sub groups we have created multiple groups for the same team. As they where introduced and we want to organize groups structure. This feature would help us a lot... There are other ways but it this way would be ideal one...
GitLab is moving all development for both GitLab Community Edition
and Enterprise Edition into a single codebase. The current
gitlab-ce repository will become a read-only mirror, without any
proprietary code. All development is moved to the current
gitlab-ee repository, which we will rename to just gitlab in the
coming weeks. As part of this migration, issues will be moved to the
current gitlab-ee project.
If you have any questions about all of this, please ask them in our
dedicated FAQ issue.
Using "gitlab" and "gitlab-ce" would be confusing, so we decided to
rename gitlab-ce to gitlab-foss to make the purpose of this FOSS
repository more clear
I created a merge requests for CE, and this got closed. What do I
need to do?
Everything in the ee/ directory is proprietary. Everything else is
free and open source software. If your merge request does not change
anything in the ee/ directory, the process of contributing changes
is the same as when using the gitlab-ce repository.
Will you accept merge requests on the gitlab-ce/gitlab-foss project
after it has been renamed?
No. Merge requests submitted to this project will be closed automatically.
Will I still be able to view old issues and merge requests in
gitlab-ce/gitlab-foss?
Yes.
How will this affect users of GitLab CE using Omnibus?
No changes will be necessary, as the packages built remain the same.
How will this affect users of GitLab CE that build from source?
Once the project has been renamed, you will need to change your Git
remotes to use this new URL. GitLab will take care of redirecting Git
operations so there is no hard deadline, but we recommend doing this
as soon as the projects have been renamed.
Where can I see a timeline of the remaining steps?