Set up a localhost LAMP solution. XAMPP/MAMP are fine. I recommend placing a symlink to htdocs in your home dir. E.g. on OSX/XAMPP: cd ~; ln -s /Applications/XAMPP/xamppfiles/htdocs
Create a github account, set up git, and register your SSH key with github.
Fork the Elgg/Elgg repo into your account.
Create a separate Elgg install for each major Elgg branch you want to work on. This is because you can't downgrade an Elgg installation once installed/upgraded. Here's an example for 1.12:
cd ~/htdocs git clone git://github.com/Elgg/Elgg.git elgg112 cd elgg112 git checkout 1.12 git remote add fork git@github.com:yourGithubUsername/Elgg.git
The Elgg 1.12 codebase is now in ~/htdocs/elgg112. Continue to install Elgg as normal, giving it its own data directory and database for 1.12.
You should end up with a working Elgg 1.12 install at http://localhost/elgg112/
If you do git remote -v, you should see the following remotes:
fork git@github.com:yourUsername/Elgg.git (push)
fork git@github.com:yourUsername/Elgg.git (fetch)
origin git@github.com:Elgg/Elgg.git (push)
origin git@github.com:Elgg/Elgg.git (fetch)
Now you have all you need to start bug fixing!
info@elgg.org
Security issues should be reported to security@elgg.org!
©2014 the Elgg Foundation
Elgg is a registered trademark of Thematic Networks.
Cover image by RaĆ¼l Utrera is used under Creative Commons license.
Icons by Flaticon and FontAwesome.