Skip to main content
Jump to: navigation, search


GIT Repository

  git clone ssh://

  git clone git://

Committers, PLEASE NOTE: will REFUSE pushed changes if the Committer entry is not YOU. Please ensure you configure your git environment correctly, by specifying your Eclipse Committer email address before committing.

Therefore, do one of the following:

EITHER via command line:

$ pwd
$ git config --local "Marcel Bruch"
$ git config --local ""

OR edit $REPO_HOME/.git/config and add the user section to the config file:

       name = Marcel Bruch
       email =

For more information about Git, please see the Git wiki page and migration guide:

AND see this pretty good screencast tutorial by Ralf Ebert:

Using Public Keys

See Git#Setting_up_ssh_keys, but not working for committers without shell access. See and especially the eclipse help page explaining the setup of SSH keys per UI.

Pushing to Gerrit for Review

git push ssh:// HEAD:refs/for/master

ACCOUNT is your Eclipse-Gerrit/Bugzilla-Account. SSH-Key for Gerrit needs to be registered before. See above.

Commit Messages

Commit messages should start with a (bugzilla) component identifier in brackets, e.g., "[completion], [tests], [subwords], [search], [core]" etc. and are followed by the short message and a long description as described in the EGit Commit Message Guidelines.

When we can't push to gerrit because of already existing refs/for/

mbruch@build:/gitroot/recommenders/org.eclipse.recommenders.git> for n in $(git for-each-ref --format='%(refname)' refs/for);     do git update-ref -d $n; done

Compiling Sources in Eclipse

See Recommenders/BuildingFromSource.

Recommenders' Technology Labs

Some ideas we work on may use software that is licensed under Eclipse-incompatible Licenses like GPL. Other ideas are implemented by externals or students and may have an unclear outcome. These repositories can not be hosted by the Eclipse Foundation for various reasons as they may contain code not conforming to the Eclipse license requirements etc.

Since these projects cannot be hosted at Eclipse we use [1] as hosting platform - and as soon as those experiments create promising results we transfer the knowledge obtained from these projects back to Eclipse and ensure IP compliance.

Please visit our eclipselabs page for a list of currently hosted lab projects.

Contributing Patches

We follow the same process as the EGit project, i.e., we are accepting patches using Eclipse' Gerrit. Please carefully read EGit Contributor Guide using Gerrit for details about how to contribute to our project.

As a general note, please attach test cases to you patches too.

Project Website

The website is hosted in git:


Anything you commit will be automatically published to within a minute.

Mailing lists

The list has been created. You can subscribe to the list here: . Subscription is required to post messages to the list.

Your mailing list will be added to the page ( after you have entered the required information into your ProjectInfo, via the Portal tools.


The eclipse.recommenders list has been created on the server.

Your newsgroup will be added to the page ( after you have entered the required information into your ProjectInfo, via the Portal tools.:

If you need additional mailing lists or newsgroups, please contact


You have a downloads area with 2GB of space. To access this area, simply use an SFTP or SCP client (such as CoreFTP or WinSCP) in SSH mode to transfer your files. Refer to the File Paths section in the Committer Tools for the downloads area to see where you should be publishing downloadable files. Please be diligent when transferring files: the downloads area is mirrored to over 70 mirror sites worldwide.

To link to a downloadable file, use the following path:

 <a href="">you name it</a>

This will ask users to pick a mirror site for the file, and it will add technology.recommenders downloads to our download statistics (also in the Committer Tools, Live Download Stats).

Creating new Download Folders

Hudson needs write access. so these new folder new special ACLs:

setfacl -R -m u:hudsonBuild:rwx


Your bugzilla project, components, versions (if specified) and milestones (if specified) have been created.

If your committers had a bugzilla account that matches the e-mail address supplied to the Foundation, their account was granted standard committer rights to edit and confirm bugs. If the committers didn't have a bugzilla account, they should create one using the same e-mail address as supplied to the Foundation and contact to have their account upgraded with committer rights.

Triggering Dev Builds (Releases)

We have three special branches used to trigger release builds: dev/e37, dev/e42, and dev/e43. Whenever they change their position, hudson builds the release new versions and publishes the artifacts to the corresponding update sites. Note that triggering dev builds also causes the corresponding release train update sites to be updated. This is sometimes unwanted...

To trigger the build you have to update the position of the branches as follows:

On your local repository:

git checkout -B dev/e37
git checkout -B dev/e42
git push

For more details see

Mirroring P2 sites


To mirror, e.g., orbit to your local server use:

export source=
export dest=/tmp/orbit

eclipse -nosplash -verbose \
 -application org.eclipse.equinox.p2.metadata.repository.mirrorApplication \
 -source $source \
 -destination $dest

eclipse -nosplash -verbose \
 -application org.eclipse.equinox.p2.artifact.repository.mirrorApplication \
 -source $source \
 -destination $dest

Back to the top