Skip to main content
Jump to: navigation, search

Difference between revisions of "Gitlab"

(Migration FAQ)
 
Line 66: Line 66:
 
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.
 
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.
  
== Permissions ==
+
==== What permissions do contributors/committers/project leads get? ====
  
Overview of project member permissions: https://gitlab.eclipse.org/help/user/permissions.md
+
Default permissions:
 
+
=== Default permissions ===
+
 
* Project leads get "Maintainer" permissions.
 
* Project leads get "Maintainer" permissions.
 
* Committers of a project get "Developer" permissions.
 
* Committers of a project get "Developer" permissions.
 
* Contributors can get "Reporter" permissions.
 
* Contributors can get "Reporter" permissions.
  
 +
Overview of project member permissions: https://gitlab.eclipse.org/help/user/permissions.md
  
 
<span style="color: red; font-weight: bold">Maintainer permissions include a few actions that project leads should not use:</span>
 
<span style="color: red; font-weight: bold">Maintainer permissions include a few actions that project leads should not use:</span>
 
* <span style="color: red">"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.</span>
 
* <span style="color: red">"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.</span>
 
* <span style="color: red">"Edit comments (posted by any user)" => Projects leads are not allowed to edit comments by any other user than themselves.</span>
 
* <span style="color: red">"Edit comments (posted by any user)" => Projects leads are not allowed to edit comments by any other user than themselves.</span>
 
  
 
<span style="color: red; font-weight: bold">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.</span>
 
<span style="color: red; font-weight: bold">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.</span>

Latest revision as of 16:16, 11 March 2022

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/

Cheat sheets

For Bugzilla users

Notifications

CC

Quick actions

See: https://docs.gitlab.com/ee/user/project/quick_actions.html

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

Duplicates

It can not be set in the UI directly, but with a quick action in a comment of an issue:

/duplicate <#issue>

For Gerrit users

Contributing code

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

Migration

Request a migration to GitLab

To migrate your Git/Gerrit repos + Bugzilla issues to GitLab, please file an issue in the GitLab HelpDesk

Known issues/Caveats

Gerrit changes/reviews

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.

Migration FAQ

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?

Yes!

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?

Default permissions:

  • 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.

Copyright © Eclipse Foundation, Inc. All Rights Reserved.