Instructions for obtaining the code from CVS can be obtained from the project page on SourceForge
The usual conditions for submitting code to CVS apply. That is, do not commit anything that does not compile, make sure that the code you submit is (mostly) bug-free and complete (that is, avoid putting in buttons if they serve no function, etc).
All changes are commited to the current repository HEAD (not a branch). Software releases are tagged as rel-x_y_z where x,y and z are natural numbers.
A branch is created after every release. Branches are named as it follows rel-x_y_z-stable. After major patches to a stable branch, the branch should be re-tagged (with normal tags) as rel-x_y_z-stable_v. This should enable hassle-less merging of bugfixes from the stable branch into the main development code.