Reviews/GerritConnectorProposalDraft

From Eclipsepedia

< Reviews
Revision as of 11:19, 29 September 2010 by Matthias.sohn.sap.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Mylyn Reviews Gerrit Connector

Background

Gerrit is a web based code review system, facilitating online code reviews for projects using the Git version control system. The Eclipse community and many other organizations are moving towards Git and Gerrit, which is the preferred code review solution in Git environments.

While the EGit project provides first class integration for Eclipse, there is no equivalent tooling for Gerrit. The increasing popularity of the EGit project has resulted in community requests to provide such an integration to leverage the full potential of Git-based code reviews from within the IDE.

Scope

The scope of this project is to provide a Gerrit connector for the Mylyn Reviews framework. The following features are planned:

  • Integrate Gerrit reviews with the Mylyn Task List
  • Provide a rich editor for reviews
  • Support offline access
  • Provide inline-commenting for source code reviews
  • Provide change notifications
  • Integrate with EGit/JGit
    • to enable convenient manipulation (download, modification, upload) of patchsets (git commits) attached to review tasks
    • to automate adding the ChangeId for Gerrit managed changes
    • to enable comparison of patchsets for a given review task
    • to discard local topic branch as soon as change has been accepted and merged into the target branch

Description

The proposed project will be based on the Mylyn Reviews framework. The framework provides a common model for reviews and reusable UI components such as support for inline commenting. It will also integrate with EGit and JGit e.g. to enable downloading, uploading and comparing changes and to enable updating changes which have been improved based on review comments.

The Gerrit connector is composed of a core and UI part.

Core: Provides the Gerrit specific data model which extends the model provided by the Mylyn Reviews framework. Additionally, the core provides network access functionality to Gerrit servers and integration with JGit and EGit core.

UI: Provides Gerrit specific UI integration, e.g. for managing Gerrit servers or creating queries for reviews. Also integrates with EGit UI for manipulation of changes.

Initial contribution

The initial contribution is provided by SonyEricsson and consists of a basic connector that integrates Gerrit with the Mylyn Task List.

Organization

The project is setup as a sub-sub project under the Mylyn Reviews project.

Initial committers

  • Chris Aniszczyk (Red Hat)
  • Matthias Sohn (SAP)
  • Steffen Pingel (Tasktop Technologies)
  • Kilian Matt (INSO)
  • Mario Bernhart (INSO)

Mentors

  • Mik Kersten
  • Chris Aniszczyk

Interested parties

  • Benjamin Muskalla (EclipseSource)
  • Shawn Pearce (Google)

Community

We expect to extend the initial set of committers by actively supporting a developer community. We will make it easy for interested parties to take an active role in the project by making our planning and process transparent.

Tentative Plan

Presentation of a stable and usable initial version at EclipseCon 2011.