Groups

In WVS, you use groups to manage one or more related projects at the same time.

You can use groups to manage permissions for your projects. If someone has access to the group, they get access to all the projects in the group.

You can also view all of the issues and merge requests for the projects in the group, and view analytics that show the group’s activity.

You can use groups to communicate with all of the members of the group at once.

For larger organizations, you can also create subgroups.

View groups

To view groups:

  1. On the top bar, select My Groups.
  2. Select Your Groups. All groups you are a member of are displayed.
  3. To view a list of public groups, select Explore public groups.

You can also view groups by namespace.

Group visibility

Like projects, a group can be configured to limit the visibility of it to:

  • Anonymous users.
  • All signed-in users.
  • Only explicit group members.

Namespaces

In WVS, a namespace is a unique name for a user, a group, or subgroup under which a project can be created.

For example, consider a user named Andy:

WVS URL Namespace
Andy creates an account with the username andy: https://wvs.example.io/andy. The namespace in this case is andy.
Andy creates a group for their team with the group name andy-team. The group and its projects are available at: https://wvs.example.io/andy-team. The namespace in this cases is andy-team.
Andy creates a subgroup of andy-team with the subgroup name marketing. The subgroup and its projects are available at: https://wvs.example.io/andy-team/marketing. The namespace in this case is andy-team/marketing.

Create a group

To create a group:

  1. On the top bar, either:
    • Select My Groups, and on the right, select Create group.
    • To the left of the search box, select the plus sign and then New group.
  2. Select Create group.
  3. Enter a name for the group in Group name. For a list of words that cannot be used as group names, see reserved names.
  4. Enter a path for the group in Group URL, which is used for the namespace.
  5. Choose the visibility level.
  6. Personalize your WVS experience by answering the following questions:
    • What is your role?
    • Who will be using this group?
    • What will you use this group for?
  7. Invite WVS members or other users to join the group.

Add users to a group

You can give a user access to all projects in a group.

  1. On the top bar, select My Groups and find your group.
  2. On the left sidebar, select Group information > Members.
  3. Select Invite members.
  4. Fill in the fields.
    • The role applies to all projects in the group. Learn more about permissions.
    • On the Access expiration date, the user can no longer access projects in the group.
  5. Select Invite.

Members that are not automatically added are displayed on the Invited tab. Users can be on this tab because they:

Request access to a group

As a user, you can request to be a member of a group, if an administrator allows it.

  1. On the top bar, select My Groups and find your group.
  2. Under the group name, select Request Access.

As many as ten of the most-recently-active group owners receive an email with your request. Any group owner can approve or decline the request.

If you change your mind before your request is approved, select Withdraw Access Request.

Prevent users from requesting access to a group

As a group owner, you can prevent non-members from requesting access to your group.

  1. On the top bar, select My Groups.
  2. Find the group and select it.
  3. From the left menu, select Settings > General.
  4. Expand the Permissions and group features section.
  5. Clear the Allow users to request access checkbox.
  6. Select Save changes.

Change the owner of a group

You can change the owner of a group. Each group must always have at least one member with the Owner role.

  • As an administrator:
    1. Go to the group and from the left menu, select Group information > Members.
    2. Give a different member the Owner role.
    3. Refresh the page. You can now remove the Owner role from the original owner.
  • As the current group’s owner:
    1. Go to the group and from the left menu, select Group information > Members.
    2. Give a different member the Owner role.
    3. Have the new owner sign in and remove the Owner role from you.

Remove a member from the group

Prerequisites:

  • You must have the Owner role.
  • The member must have direct membership in the group. If membership is inherited from a parent group, then the member can be removed from the parent group only.

To remove a member from a group:

  1. Go to the group.
  2. From the left menu, select Group information > Members.
  3. Next to the member you want to remove, select Delete.
  4. Optional. On the Remove member confirmation box, select the Also unassign this user from linked issues and merge requests checkbox.
  5. Select Remove member.

Filter and sort members in a group

To find members in a group, you can sort, filter, or search.

Filter a group

Filter a group to find members. By default, all members in the group and subgroups are displayed.

  1. Go to the group and select Group information > Members.
  2. Above the list of members, in the Filter members box, enter filter criteria.
    • To view members in the group only, select Membership = Direct.
    • To view members of the group and its subgroups, select Membership = Inherited.
    • To view members with two-factor authentication enabled or disabled, select 2FA = Enabled or Disabled.

Search a group

You can search for members by name, username, or email.

  1. Go to the group and select Group information > Members.
  2. Above the list of members, in the Filter members box, enter search criteria.
  3. To the right of the Filter members box, select the magnifying glass ().

Sort members in a group

You can sort members by Account, Access granted, Max role, or Last sign-in.

  1. Go to the group and select Group information > Members.
  2. Above the list of members, on the top right, from the Account list, select the criteria to filter by.
  3. To switch the sort between ascending and descending, to the right of the Account list, select the arrow ( or ).

Mention a group in an issue or merge request

When you mention a group in a comment, every member of the group gets a to-do item added to their To-do list.

  1. Open the MR or issue.
  2. In a comment, type @ followed by the user, group, or subgroup namespace. For example, @andy, @andy-team, or @andy-team/marketing.
  3. Select Comment.

A to-do item is created for all the group and subgroup members.

Change the default branch protection of a group

By default, every group inherits the branch protection set at the global level.

To change this setting for a specific group, see group level default branch protection.

To change this setting globally, see initial default branch protection.

Add projects to a group

There are two different ways to add a new project to a group:

  • Select a group, and then select New project. You can then continue creating your project.
  • While you are creating a project, select a group from the dropdown list.

Specify who can add projects to a group

By default, users with at least the Developer role can create projects under a group.

To change this setting for a specific group:

  1. On the top bar, select My Groups.
  2. Select Your Groups.
  3. Find the group and select it.
  4. From the left menu, select Settings > General.
  5. Expand the Permissions and group features section.
  6. Select the desired option in the Allowed to create projects dropdown list.
  7. Select Save changes.

To change this setting globally, see Default project creation protection.

View group activity

You can view the most recent actions taken in a group, either in your browser or in an RSS feed:

  1. On the top bar, select My Groups.
  2. Select Your Groups.
  3. Find the group and select it.
  4. On the left sidebar, select Group information > Activity.

To view the activity feed in Atom format, select the RSS () icon.

Share a group with another group

Similar to how you share a project with a group, you can share a group with another group. To invite a group, you must be a member of it. Members get direct access to the shared group. This includes members who inherited group membership from a parent group.

To share a given group, for example, Frontend with another group, for example, Engineering:

  1. Go to the Frontend group.
  2. On the left sidebar, select Group information > Members.
  3. Select Invite a group.
  4. In the Select a group to invite list, select Engineering.
  5. Select a role as maximum access level.
  6. Select Invite.

After sharing the Frontend group with the Engineering group:

  • The Groups tab lists the Engineering group.
  • The Groups tab lists a group regardless of whether it is a public or private group.
  • All members of the Engineering group have access to the Frontend group. The same access levels of the members apply up to the maximum access level selected when sharing the group.

Transfer a group

You can transfer groups in the following ways:

  • Transfer a subgroup to a new parent group.
  • Convert a top-level group into a subgroup by transferring it to the desired group.
  • Convert a subgroup into a top-level group by transferring it out of its current group.

When transferring groups, note:

  • Changing a group’s parent can have unintended side effects. See what happens when a repository path changes.
  • You can only transfer groups to groups you manage.
  • You must update your local repositories to point to the new location.
  • If the immediate parent group’s visibility is lower than the group’s current visibility, visibility levels for subgroups and projects change to match the new parent group’s visibility.
  • Only explicit group membership is transferred, not inherited membership. If the group’s owners have only inherited membership, this leaves the group without an owner. In this case, the user transferring the group becomes the group’s owner.
  • Transfers fail if packages exist in any of the projects in the group, or in any of its subgroups.

Change a group’s path

Changing a group’s path (group URL) can have unintended side effects. Read how redirects behave before you proceed.

If you are changing the path so it can be claimed by another group or user, you must rename the group too. Both names and paths must be unique.

To retain ownership of the original namespace and protect the URL redirects, create a new group and transfer projects to it instead.

To change your group path (group URL):

  1. Go to your group’s Settings > General page.
  2. Expand the Advanced section.
  3. Under Change group URL, enter a new name.
  4. Select Change group URL.
caution
It is not possible to rename a namespace if it contains a project with Container Registry tags, because the project cannot be moved.

Use a custom name for the initial branch

When you create a new project in WVS, a default branch is created with the first push. The group owner can customize the initial branch for the group’s projects to meet your group’s needs.

Remove a group

To remove a group and its contents:

  1. On the top bar, select My Groups and find your group.
  2. On the left sidebar, select Settings > General.
  3. Expand the Advanced section.
  4. In the Remove group section, select Remove group.
  5. Type the group name.
  6. Select Confirm.

A group can also be removed from the groups dashboard:

  1. On the top bar, select My Groups.
  2. Select Your Groups.
  3. Select () for the group you want to delete.
  4. Select Delete.
  5. In the Remove group section, select Remove group.
  6. Type the group name.
  7. Select Confirm.

This action removes the group. It also adds a background job to delete all projects in the group.

Prevent group sharing outside the group hierarchy

This setting is only available on top-level groups. It affects all subgroups.

When checked, any group in the top-level group hierarchy can be shared only with other groups in the hierarchy.

For example, with these groups:

  • Animals > Dogs
  • Animals > Cats
  • Plants > Trees

If you select this setting in the Animals group:

  • Dogs can be shared with Cats.
  • Dogs cannot be shared with Trees.

To prevent sharing outside of the group’s hierarchy:

  1. Go to the group’s Settings > General page.
  2. Expand the Permissions and group features section.
  3. Select Prevent members from sending invitations to groups outside of <group_name> and its subgroups.
  4. Select Save changes.

Prevent a project from being shared with groups

Prevent projects in a group from sharing a project with another group to enable tighter control over project access.

To prevent a project from being shared with other groups:

  1. Go to the group’s Settings > General page.
  2. Expand the Permissions and group features section.
  3. Select Prevent sharing a project in <group_name> with other groups.
  4. Select Save changes.

This setting applies to all subgroups unless overridden by a group owner. Groups already added to a project lose access when the setting is enabled.

To disable email notifications:

  1. Go to the group’s Settings > General page.
  2. Expand the Permissions and group features section.
  3. Select Disable email notifications.
  4. Select Save changes.

Disable group mentions

You can prevent users from being added to a conversation and getting notified when anyone mentions a group in which those users are members.

Groups with disabled mentions are visualized accordingly in the autocompletion dropdown list.

This is particularly helpful for groups with a large number of users.

To disable group mentions:

  1. Go to the group’s Settings > General page.
  2. Expand the Permissions and group features section.
  3. Select Disable group mentions.
  4. Select Save changes.

Group approval settings

Group approval settings manage project merge request approval settings at the top-level group level. These settings cascade to all projects that belong to the group.

Troubleshooting

For additional support, please reach out to us on our Discord or by Email.