GitLab Migration - Migrate Project Members
Proposed Solution
- For each migrated project, add the project members if they exist in the parent group.
- Match users by email.
- Match the users to the existing objects in the project (issues, comments, etc.).
- If a user doesn't exist, assign the importer user instead and add a note (similar to project imports).
- Allow more relaxed user matching when the contributor already belongs to the (parent) group, as proposed here for Project Import. (This would allow non-admins on GitLab.com to migrate projects and not have the importer user be the author for everything) *
Additional detail
* To further clarify the proposal to allow a more relaxed user matching when the contributor already belongs to the (parent) group, which would allow non-admins on GitLab.com to migrate projects and not have the importer user be the author for everything, these would be the required conditions for this use-case:
- importing into a group namespace (not user namespace), and
- importing user is an owner/maintainer within (sub)group (should be tied to project creation option - which can include developer), and
- contributor is a member of the group
Note: if the above conditions are not met, or any of the following conditions are true, the contributions will still be associated with the importing user:
- user does not exist, or
- email associated with user in the source instance does not match the primary email of any user, or
- user exists but is not a member of the group
Documentation
Following documentation should be updated with the objects/fields added in this issue:
-
User docs: https://docs.gitlab.com/ee/user/group/import/ -
Dev docs: https://docs.gitlab.com/ee/development/bulk_import.html
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.