Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Gitlab"

 
(4 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
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/
 
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/
  
== From Bugzilla cheat sheet ==
+
== Cheat sheets ==
=== Notifications ===
+
 
* Global notification settings are in your profile: https://gitlab.eclipse.org/profile/notifications
+
=== For Bugzilla users ===
* Group notificaton settings are also in your profile
+
==== Notifications ====
 +
* 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.
 
* To "watch" a project, go to that project page. The notification bell at the top left can be changed to watch.
  
=== CC ===
+
==== CC ====
 
* Currently no specific way to CC someone. See: https://gitlab.com/gitlab-org/gitlab/-/issues/197288
 
* Currently no specific way to CC someone. See: https://gitlab.com/gitlab-org/gitlab/-/issues/197288
* you can @user1 in the comments, though. See: https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues/2#note_5
+
* 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
  
=== Quick actions ===
+
==== Quick actions ====
 
See: https://docs.gitlab.com/ee/user/project/quick_actions.html
 
See: https://docs.gitlab.com/ee/user/project/quick_actions.html
  
=== Bug blocks .. depends on functionality ===
+
==== 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
 
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 ====
  
== From Gerrit cheat sheet ==
+
It can not be set in the UI directly, but with a quick action in a comment of an issue:
=== Contributing code ===
+
 
 +
<code>/duplicate <#issue></code>
 +
 
 +
=== 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.
 
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.
  
Line 28: Line 34:
 
https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html
 
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 [https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues GitLab HelpDesk]
  
== Migrating from Gerrit and Bugzilla ==
+
=== Known issues/Caveats ===
Migrating Gerrit and Bugzilla to Gitlab is straightforward, but not complete. Items that are not migrated:
+
==== Gerrit changes/reviews ====
* Gerrit changes. Although the complete Git repository, with history, is migrated, Gerrit changes are not imported.
+
Although the complete Git repository, with history, is migrated, Gerrit changes/reviews are not imported.
* Bug and comment attributions. All bugs are migrated as issues, but due to tool limitations, all bugs and comments are attributed to Eclipse Webmaster. The original submitter's name, and each commenter's name is preserved. Attachments are imported, and links to the original bug are preserved. Please see this example of a migrated bug: https://gitlab.eclipse.org/eclipse/dash/org.eclipse.dash.handbook/-/issues/138
+
==== 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'''.
 
+
To migrate your Git + Bugzilla to Gitlab: Please file an issue in Eclipse Foundation > Gitlab
+
* (https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues)
+
  
 
=== Migration FAQ ===
 
=== Migration FAQ ===
  
'''Q: Big picture - what is involved in migrating a repository from github to gitlab?'''
+
==== GitHub to GitLab ====
 
+
A: First step is to cordinate the move with your community. Then, filing a Gitlab issue at https://gitlab.eclipse.org/eclipsefdn/gitlab/-/issues
+
 
+
  
'''Q:What is the learning curve for contributors?'''
+
===== '''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.
  
A: As far as I can tell, it is close in functionality to Github.
+
===== '''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.
  
'''Q: Are there contribution procedures in place for contributors to Eclipse projects?'''
+
==== Does the ECA check work the same? ====
 +
Yes!
  
A: The same ones as found at Github.
+
==== 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.
  
'''Q: Does ECA check work the same?'''
+
==== What permissions do contributors/committers/project leads get? ====
  
A: Yes!
+
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
  
'''Q: Can we use GitLab runners and the CI?'''
+
<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">"Edit comments (posted by any user)" => Projects leads are not allowed to edit comments by any other user than themselves.</span>
  
A: No, not at this time. Jiro is the only CI supported.
+
<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.

Back to the top