Font size:      

Contributing to EMMA for non-committers

If you are not a project member with full access to EMMA CVS, the best way to contribute source code changes is to follow these steps:

  1. Decide which EMMA baseline version (trunk tip, branch tip, a specific point release) you would like to impact. It could be the release build you have been using yourself or it could be the current trunk tip. Communicating with the dev team via the dev forum can help decide on the best course of action.

  2. Create your own anonymous CVS sandbox for EMMA, either via a command line CVS client (instructions) or via Eclipse (instructions).

  3. Make your changes. Test them.

  4. Prepare a patch as described below.

  5. If you are the original creator of the Tracker issue you are trying to address, attach the patch to the SourceForce Tracker discussion thread, along with a note specifying EMMA baseline version against which the change was created.

  6. Otherwise, email your patch to EMMA project admin(s), along with a note specifying EMMA baseline version against which the change was created.

Preparing a patch (command line CVS users)

If you are working out of a CVS project created via anonymous CVS, the best option is to create a (possibly, multi-file) CVS patch:

cvs diff -u > mypatch.diff
Diff scope
You might want to cd into a project subdirectory prior to this command to restrict the scope of diff'ing.

Preparing a patch (Eclipse users)

Eclipse can create and apply patches in the unified diff format. Assuming you are working out of an Eclipse CVS project created from EMMA repository, you can create a (possibly, multi-file) patch by selecting the desired resource scope in the package explorer and doing "Team/Create Patch...".

Eclipse patch scope
Because the patch must be applied to the same Eclipse resource it was generated from it is probably safest to select the project itself.

Make sure to save the patch into a file and leave the "Diff output format" as "Unified".

How to become a committer

EMMA project welcomes new developers who would like to stick around and make frequent/substantial contributions over a period of time. If you are interested, start by making a few contributions via patches and participating in the dev discussion forum. If you then decide that you would like to join the project, contact the project admin(s). You will then be allowed to join EMMA's SourceForge project, given full write access to the project's CVS repository, and will be able to work out of a developer sandbox.