Private projects inside group

Hello, i want to create projects in a namespace different from my user name so i created a group. So it looks like this:


Users with access to the project could fork it to make it look like this:


I also want that each project inside the namespace be private, so user A cannot access to project2 and user B cannot access to project1. I could not found the way to do this, since projects inside groups are shared to every member in the group. Any solution? Maybe the way is not creating a group, but i need the project to be in a custom namespace, so the owner could fork it too.

Any ideas?

You can configure individual users as members of specific projects within a group without giving them full access to the group.

For example, you could create a group named company-projects without any users as members of the group. You can then create projects named project1 and project2 in this group.
Within each project, you can go into the project’s settings menu and choose “Members”, then add individual users to the project’s access list.

Here is a screenshot of one of my projects that does this. We have three group members, as well as seven other users who are not members of the group but who have explicit access to the project (though I cut four of them out of the picture to save space):

1 Like

That works, thanks for the answer!
There’s still a problem. I would like some users to be able to create projects in the group. This users also, should only see the projects they have access to. Example:

  • usera created a project project1 in group groupa

  • userb created a project project2 in group groupa

  • userc is a member of project1 and project2

  • usera cannot see content of project2

  • userb cannot see content of project1

  • userc can see content of project1 and project2

If i add a member as a guest to the group, that user have access to the content of all the projects, so its not an option.

Any ideas?

The only thing I can think of is that you should have the user create the project in their own space and have an administrator move it into the group. Unfortunately, GitLab just wasn’t designed for what you are trying to do.

Actually, here is one option you might be able to do: instead of having users create their new repositories directly in GitLab, write your own “Repository Creation Tool” that uses the GitLab API to create projects and set users’ permissions on them.