Would you like to contribute to jpatterns.org?
We are in the early stages of this project and welcome ideas on how to improve the class design, as well as practical help in defining the annotations for the various patterns, together with unit tests, documentation and tools.
We have a mailing list for questions and discussions about the development.
The sources are located on github.
Forking and Submitting Changes
If you would like to contribute some changes to the project, please go to our github project and click on the “fork” button.
Then you can work on that, do what you want and whenever you have something ready you can issue a “pull request” to the original project owner so that he can fetch your repo and look at the commits in question and if they are suitable he merges them into his master branch.
You can also do git format-patch on a certain set of changes. Then git creates a patch file that you can send to us, we can look at it and then apply to our current branch.
First off, upload your public SSH key to your account on the github website. It will make things much easier for you when you need to upload your changes. There are bugs in the http interface for github.org, causing it to sometimes fail. The SSH interface is more robust.
Basic workflow should be something like the following:
git clone email@example.com:jexp/jpatterns.git
do your local changes & local commits (repeat as often as you’d like):
git add <files> or git add .
git commit -m”message”
if you want to share/push changes
first pull last public state
(–rebase is better than normal pull because it first fetches the clean remote branch and then _reapplies_ your commits one after another on top of that, instead of doing a big merge of the remote branch on top of your changed HEAD state.
git pull –rebase origin master
then push your changes
git push origin master
Once you have cloned the git project and/or pulled the latest changes, you can build the project like this:
To generate the javadocs, please run:
Please make sure that your sources build before pushing them into github.
We all have our own individual preferences of how wide tab spaces should be, whether we should put braces at the end of a condition or underneath, etc. In our project, we are using 2 spaces for indentation and we are writing braces at the end the line, rather than underneath. Please try to stick to our conventions wherever possible.