2020-10-30 14:08:56 -04:00
---
stage: none
group: unassigned
2020-11-26 01:09:20 -05:00
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
2020-10-30 14:08:56 -04:00
---
2020-04-21 14:09:31 -04:00
# Members of a project
2017-08-14 14:00:09 -04:00
You can manage the groups and users and their access levels in all of your
projects. You can also personalize the access level you give each user,
per-project.
2018-05-25 02:18:42 -04:00
You should have Maintainer or Owner [permissions ](../../permissions.md ) to add
2017-08-14 14:00:09 -04:00
or import a new user to your project.
To view, edit, add, and remove project's members, go to your
2020-05-28 11:08:02 -04:00
project's **Members** .
2017-08-14 14:00:09 -04:00
2019-12-13 10:08:02 -05:00
## Inherited membership
When your project belongs to the group, group members inherit the membership and permission
level for the project from the group.
2021-01-06 04:10:31 -05:00
![Project members page ](img/project_members_13_8.png )
2019-12-13 10:08:02 -05:00
From the image above, we can deduce the following things:
- There are 3 members that have access to the project.
- User0 is a Reporter and has inherited their permissions from group `demo`
which contains current project.
- For User1 there is no indication of a group, therefore they belong directly
to the project we're inspecting.
- Administrator is the Owner and member of **all** groups and for that reason,
there is an indication of an ancestor group and inherited Owner permissions.
2020-05-21 23:08:28 -04:00
[From GitLab 12.6 ](https://gitlab.com/gitlab-org/gitlab/-/issues/21727 ), you can filter this list
2019-12-19 04:07:39 -05:00
using the dropdown on the right side:
2019-12-13 10:08:02 -05:00
![Project members filter ](img/project_members_filter_v12_6.png )
- **Show only direct members** displays only User1.
- **Show only inherited members** displays User0 and Administrator.
2017-08-14 14:00:09 -04:00
## Add a user
Right next to **People** , start typing the name or username of the user you
want to add.
2021-01-06 04:10:31 -05:00
![Search for people ](img/add_user_search_people_13_8.png )
2017-08-14 14:00:09 -04:00
2017-11-10 12:32:18 -05:00
Select the user and the [permission level ](../../permissions.md )
2017-08-14 14:00:09 -04:00
that you'd like to give the user. Note that you can select more than one user.
2021-01-06 04:10:31 -05:00
![Give user permissions ](img/add_user_give_permissions_13_8.png )
2017-08-14 14:00:09 -04:00
2020-11-19 22:09:15 -05:00
Once done, select **Add users to project** and they are immediately added to
2017-08-14 14:00:09 -04:00
your project with the permissions you gave them above.
2021-01-06 04:10:31 -05:00
![List members ](img/add_user_list_members_13_8.png )
2017-08-14 14:00:09 -04:00
From there on, you can either remove an existing user or change their access
level to the project.
## Import users from another project
You can import another project's users in your own project by hitting the
**Import members** button on the upper right corner of the **Members** menu.
2018-05-22 06:16:06 -04:00
In the dropdown menu, you can see only the projects you are Maintainer on.
2017-08-14 14:00:09 -04:00
2021-01-06 04:10:31 -05:00
![Import members from another project ](img/add_user_import_members_from_another_project_13_8.png )
2017-08-14 14:00:09 -04:00
Select the one you want and hit **Import project members** . A flash message
2020-11-19 22:09:15 -05:00
displays, notifying you that the import was successful, and the new members
2017-08-14 14:00:09 -04:00
are now in the project's members list. Notice that the permissions that they
had on the project you imported from are retained.
2021-01-06 04:10:31 -05:00
![Members list of new members ](img/add_user_imported_members_13_8.png )
2017-08-14 14:00:09 -04:00
## Invite people using their e-mail address
If a user you want to give access to doesn't have an account on your GitLab
instance, you can invite them just by typing their e-mail address in the
user search field.
2021-01-06 04:10:31 -05:00
![Invite user by mail ](img/add_user_email_search_13_8.png )
2017-08-14 14:00:09 -04:00
As you can imagine, you can mix inviting multiple people and adding existing
GitLab users to the project.
2021-01-06 04:10:31 -05:00
![Invite user by mail ready to submit ](img/add_user_email_ready_13_8.png )
2017-08-14 14:00:09 -04:00
Once done, hit **Add users to project** and watch that there is a new member
with the e-mail address we used above. From there on, you can resend the
2019-01-13 16:52:04 -05:00
invitation, change their access level, or even delete them.
2017-08-14 14:00:09 -04:00
2021-01-06 04:10:31 -05:00
![Invite user members list ](img/add_user_email_accept_13_8.png )
2017-08-14 14:00:09 -04:00
2020-12-16 10:10:18 -05:00
While unaccepted, the system automatically sends reminder emails on the second, fifth,
2020-12-03 22:09:49 -05:00
and tenth day after the invitation was initially sent.
2020-11-19 22:09:15 -05:00
After the user accepts the invitation, they are prompted to create a new
2017-08-14 14:00:09 -04:00
GitLab account using the same e-mail address the invitation was sent to.
2020-12-04 16:09:29 -05:00
NOTE:
2020-10-01 14:10:20 -04:00
Unaccepted invites are automatically deleted after 90 days.
2019-09-11 22:58:07 -04:00
## Project membership and requesting access
2017-08-14 14:00:09 -04:00
2019-09-11 22:58:07 -04:00
Project owners can :
2017-08-14 14:00:09 -04:00
2019-09-11 22:58:07 -04:00
- Allow non-members to request access to the project.
- Prevent non-members from requesting access.
To configure this, go to the project settings and click on **Allow users to request access** .
GitLab users can request to become a member of a project. Go to the project you'd
like to be a member of and click the **Request Access** button on the right
2017-08-14 14:00:09 -04:00
side of your screen.
![Request access button ](img/request_access_button.png )
2019-09-11 22:58:07 -04:00
After access is requested:
2019-08-30 17:30:51 -04:00
2019-09-11 22:58:07 -04:00
- Up to ten project maintainers are notified of the request via email.
2019-08-30 17:30:51 -04:00
Email is sent to the most recently active project maintainers.
2019-09-11 22:58:07 -04:00
- Any project maintainer can approve or decline the request on the members page.
2019-08-30 17:30:51 -04:00
2020-12-04 16:09:29 -05:00
NOTE:
2019-08-30 17:30:51 -04:00
If a project does not have any maintainers, the notification is sent to the
most recently active owners of the project's group.
2017-08-14 14:00:09 -04:00
2021-01-06 04:10:31 -05:00
![Manage access requests ](img/access_requests_management_13_8.png )
2017-08-14 14:00:09 -04:00
If you change your mind before your request is approved, just click the
**Withdraw Access Request** button.
![Withdraw access request button ](img/withdraw_access_request_button.png )
## Share project with group
2017-08-14 15:15:51 -04:00
Alternatively, you can [share a project with an entire group ](share_project_with_groups.md ) instead of adding users one by one.
2020-07-13 08:09:18 -04:00
## Remove a member from the project
Only users with permissions of [Owner ](../../permissions.md#group-members-permissions ) can manage
project members.
You can remove a user from the project if the given member has a direct membership in the project.
If membership is inherited from a parent group, then the member can be removed only from the parent
group itself.
When removing a member, you can decide whether to unassign the user from all issues and merge
requests they are currently assigned or leave the assignments as they are.
- **Unassigning the removed member** from all issues and merge requests might be helpful when a user
is leaving a private project and you wish to revoke their access to any issues and merge requests
they are assigned.
- **Keeping the issues and merge requests assigned** might be helpful for projects that accept public
contributions where a user doesn't have to be a member to be able to contribute to issues and
merge requests.
To remove a member from a project:
1. In a project, go to ** {users}** **Members** .
1. Click the **Delete** ** {remove}** button next to a project member you want to remove.
A **Remove member** modal appears.
1. (Optional) Select the **Also unassign this user from related issues and merge requests** checkbox.
1. Click **Remove member** .