Contributions are essential for keeping Thym great. There are a few guidelines that Eclipse.org contributors needs to follow so that we can have a chance of keeping on top of things.
- Make sure you have a completed and signed Eclipse CLA
- Make sure you have a GitHub account
- Fork the repository on GitHub
- Clone your fork
$ git clone git@github.com:<you>/thym.git
$ cd thym
$ git remote add upstream git@github.com:eclipse/thym.git
At any time, you can pull changes from the upstream and merge them onto your master. The general idea is to keep your 'master' branch in-sync with the 'upstream/master'.
$ git checkout master # switches to the 'master' branch
$ git pull upstream master # fetches all 'upstream' changes and merges 'upstream/master' onto your 'master' branch
$ git push origin # pushes all the updates to your fork, which should be in-sync with 'upstream'
- Create a topic branch based on master, Please avoid working directly on the master
$ git checkout -b my_contribution
- Make changes for the bug or feature.
- Make sure you have added the necessary tests for your changes.
- Make sure that a full build (with unit tests) runs successfully.
- Commit your changes and have your commit messages in the proper format For Example:
[410937] Auto share multiple projects in single job
When multiple projects are imported together, perform all the necessary
auto shares in a single job rather than spawning a separate job for each
project.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=410937
Also-by: Some Otherperson <otherperson@someplace.net>
Signed-off-by: Joe Somebody <somebody@someplace.net>
Note that the "Signed-off-by" entry is required see details.
- You can then push your topic branch and its changes into your public fork repository:
$ git push origin my_contribution # pushes your topic branch into your fork
And then generate a pull-request where we can review the proposed changes, comment on them, discuss them with you, and if everything is good merge the changes right into the official repository.
We recommend using and enabling the following plugins in Eclipse: JDT, PDE, EGit and GitHub connectors
In order to resolve the various dependencies of Thym, you can find some target-definition files on the repository, under top-level folder target-platforms. Import the target-platforms folder in your workspace and open the current main .target file (if there are more than one, see on parent pom the value of target-platform property which references the main one). Upon opening, the target content will be downloaded. When complete, you can press the Set as Target Platform link in the top right corner to update the target platform. PDE will then load the content of the target file, so it will be all set to resolve the various dependencies.
Building Thym requires Maven (3.1+).
This command will run the build:
$ mvn clean verify