Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: for the plan.

Jump to: navigation, search


Revision as of 09:39, 18 June 2013 by (Talk | contribs) (Reviewing a patch / code review)

LTS Forge

The Eclipse LTS Forge offers several services:

Using Gerrit / Git

Gerrit a code review system as well as a repository service manager which provides access to project repositories.

The LTS Forge Gerrit instance is available at

Once there you will not be able to see any projects or code reviews until you login. You can login by clicking Sign In at the top right of the page.

You will need to use your email address and password to login.

We will try to cover a few use-cases of what you might want to do in the subsections below.

Setting up your Gerrit account

In order to checkout code from the git repositories you will first need to configure your Gerrit account. There is 2 possible options depending on what your most comfortable with.

1. Setup a SSH Key to enable git checkouts via SSH

2. Generate a random password to enable git checkotus via HTTPS

To access the screens to configure these you will need to click Settings at the top right once you login to Gerrit.

Then clicking SSH Public Keys or HTTP Password in the left menu bar depending on which you want to configure.

Setting up SSH Public Keys

SSH Public Key authentication is recommended over HTTP Password authentication as it is a little more secure.

Gerrit Settings for SSH Public Keys

To configure an SSH Public Key you will need to:

  1. Click Settings on the top right after logging into Gerrit
  2. Click SSH Public Keys on the left menu
  3. Copy and Paste your SSH Key into the Add SSH Public Key box
  4. Click Add

Once your SSH Public Key is added you should be able to checkout using the Gerrit SSH URLs for your project. You will need to use the Username that Gerrit supplied as your username when checking out the code.

For example:

git clone ssh://

See also: #Checkout code with Gerrit

Verifying SSH works

The following command should return a list of available projects to you if your ssh settings are configured correctly.

ssh -p 29418 gerrit ls-projects

Replace user with your userid from Gerrit.

Setting up HTTP Password

Gerrit Settings for HTTP Password

To configure an HTTP Password you will need to:

  1. Click Settings on the top right after logging into Gerrit
  2. Click HTTP Password on the left menu
  3. Click Generate Password to generate a new password

Note: If you have no need for a HTTP Password it is recommended you clear the password as this will make your account more secure.

Once your HTTP Password is generated you should be able to checkout using the Gerrit HTTPS URLs for your project. You will need to use the Username that Gerrit supplied as your username when checking out the code.

For example:

git clone

See also: #Checkout code with Gerrit

Checkout code with Gerrit

Gerrit provides 2 URLs for checking out code in the format:

  1. git clone ssh://
  2. git clone
  • Replace project with the project such as "jdt", "platform", "equinox", etc...
  • Replace repo with the specific repo in the project such as "eclipse.platform.releng.aggregator"

You can get a list of all projects you have access to by navigating to the projects page in Gerrit.

  1. Click Projects in the top menubar
  2. Click List in the Projects submenu

The project list shows the full project/repo list so you can simply replace that string into the example URLs above.

Gerrit Projects List

Pushing a patch to Gerrit Review

After making a patch and your ready to push you will want to commit your patch to your local git and then push it up to Gerrit's special refs/for/branch path.

    git add /path/to/file
    git commit
    git push origin HEAD:refs/for/branch
  • Replace refs/for/branch with the branch name of the branch your code is for such as R4_2_maintenance

Pushing changes to Company specific branch

While LTS Central Forge does not allow direct pushes you are able to push directly to your company specific branch by prefixing your branch name with your company. For example:

    git checkout -b company/branch
    git add /path/to/file
    git commit
    git push origin company/branch

Reviewing a patch / code review

You can display all open code reviews by:

  1. Clicking All from the top menu
  2. Clicking Open from the submenu

This will list of all open code reviews that need reviewing. Selecting a specific review will open up a screen displaying the contents of the patch submitted and allow you to review the patch.

Getting notifications


Hudson is a Continuous Integration server used by the LTS Forge. It is hosted at

You can use Hudson to run periodic builds.

Setting up a Hudson Maven project to build Eclipse Platform

For the steps below. Navigate to your Job you wish to configure and choose Configure

Set the JDK

It is recommended to set the JDK explicitly for your job instead of using the Default JDK. If you don't know which one to pick we recommend to select Oracle JDK 1.7.

Setting up Git

  1. Enter URL of git repo (refer to #Checkout code with Gerrit)
  2. Set the build branch (eg. R4_2_maintenance)
  3. Click Advanced... under Branches to Build
  4. Check Skip internal tag
  5. Save

Setting up Platform Build

Build step 1, invoke maven for Platform build

  1. click Add Build Step -> Invoke Maven 3
  2. click Advanced
  3. Set goals: clean verify
  4. Set properties: maven.test.skip=true
  5. Set pom-file: pom.xml
  6. Set private repository enabled
  7. Save


Using TortoiseGit to "git submodule update"

  1. Navigate to your git repository which you cloned (eg. eclipse.platform.releng.aggregator)
  2. Right click > TortoiseGit > Submodule Update
  3. Select to Initialize Submodules
  4. Click OK

Known Issues

Fail to clone submodules using msysgit

Per Bug 376400 we discovered that msysgit has a max character limit somewhere around 256 which causes cloning files with a path longer than that to fail.


Workaround: Put your repo in the root of a drive and give it a short name. For example: C:\z

My Views link is broken

Per Bug 403242 we discovered that trying to set any settings under "User Configuration" will cause the "Default View" setting to be set to blank. Once this occurs clicking "My View" in the left pane will display a stack trace error with no way of resetting it. Until this bug is resolved in Hudson we would recommend not trying to set anything in "User Configuration".


Error assembling JAR: Could not find a common basedir (Resolved)

In git version 1.7.8 and newer, git changed it's behaviour with respect to submodules

The new behaviour causes Tycho Eclipse-SourceReference provider for git to be unable to calculate the basedir correctly. There is a open Tycho bug that includes a patch for getting this resolved

Workaround: Use a git version 1.7.7 or earlier.

Cannot git clone via ssh:// protocol (Resolved)

The issue with this is that most user accounts on the Forge will not have shell access to the forge and the ssh:// protocol requires shell to operate. The solution we decided to go with was we provisioned a https:// protocal instead which we will recommend users to use instead.

Back to the top