GitLab instance: https://gitlab.eclipse.org/
GitLab has a similar functionality set compared to GitHub. A GitHub Pull Request is analogous to a a GitLab Merge Request. Below is a quick cheat sheet for getting productive with GitLab. The official GitLab User guide is here: https://docs.gitlab.com/ee/user/
- 1 Cheat sheets
- 2 Migration
- 2.1 Request a migration to GitLab
- 2.2 Known issues/Caveats
- 2.3 Migration FAQ
- 2.3.1 GitHub to GitLab
- 2.3.2 Does the ECA check work the same?
- 2.3.3 Can we use GitLab runners and GitLab CI?
- 2.3.4 What permissions do contributors/committers/project leads get?
For Bugzilla users
- Global and group notification settings can be found in your profile: https://gitlab.eclipse.org/profile/notifications
- To "watch" a project, go to that project page. The notification bell at the top left can be changed to watch.
- Currently no specific way to CC someone. See: https://gitlab.com/gitlab-org/gitlab/-/issues/197288
- You can mention a user with "@<username>" (e.g. @user1) in the comments, though. See: https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues/2#note_5
Bug blocks .. depends on functionality
GitLab supports Linked issues (related, is blocked by, depends on) - either in the same project, or across projects. See Linked Issues, or this example: https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues/6#related-issues
It can not be set in the UI directly, but with a quick action in a comment of an issue:
For Gerrit users
While project committers can commit to the repositories directly, contributors must use Merge Requests (MR). In fact, project committers can (should?) also use the Merge Request model to trigger code review.
There are many methods to trigger a Merge Request. They are all described here: https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html
Request a migration to GitLab
To migrate your Git/Gerrit repos + Bugzilla issues to GitLab, please file an issue in the GitLab HelpDesk
Although the complete Git repository, with history, is migrated, Gerrit changes/reviews are not imported.
Bugzilla bug and comment attributions
All bugs are migrated as issues. The original submitter's name, and each commenter's name is preserved only if the submitter/commenter has a GitLab user account.
GitHub to GitLab
Big picture - what is involved in migrating a repository from GitHub to GitLab?
First step is to coordinate the move with your community. Then, filing a GitLab issue at https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues.
What is the learning curve for contributors?
GitHub and GitLab are very similar in functionality. For example "Pull requests" (GitHub) are called "Merge requests" in GitLab.
Are there contribution procedures in place for contributors to Eclipse projects?
The same ones as found at GitHub.
Does the ECA check work the same?
Can we use GitLab runners and GitLab CI?
Jiro is the only CI supported for now. We are investigating how some functionality (dependency checks, GitLab pages) can be handled with GitLab CI, but we are not offering GitLab runners for handling CI tasks for now. Projects will still be able to add their own runners, similar to how projects can add their own Jenkins build agents.
What permissions do contributors/committers/project leads get?
- Project leads get "Maintainer" permissions.
- Committers of a project get "Developer" permissions.
- Contributors can get "Reporter" permissions.
Overview of project member permissions: https://gitlab.eclipse.org/help/user/permissions.md
Maintainer permissions include a few actions that project leads should not use:
- "Add new team members" => Project leads are not allowed to simply add team members. Committers must be elected as defined in the Eclipse development process.
- "Edit comments (posted by any user)" => Projects leads are not allowed to edit comments by any other user than themselves.
If any other permission or action is abused or violates the rules of the Eclipse development process, we retain the right to remove the permissions.