The easiest way to install and manage your Elgg project
https://getcomposer.org/download/
composer self-update
composer global require fxp/composer-asset-plugin
composer create-project elgg/starter-project:dev-master ./path/to/my/project
cd ./path/to/my/project
composer install
## go to your browser and install Elgg via the installation interface
cd ./path/to/my/project
git init
git add .
git commit -a -m 'Initial commit'
git remote add origin <git repository url>
git push -u origin master
Install plugins as composer depencies. This assumes that a plugin has been registered on https://packagist.org/
composer install hypejunction/hypefeed
composer install hypejunction/hypeinteractions
# whatever else you need
Make sure composer.lock
is not ignored in .gitignore
git add .
git commit -a -m 'Add new plugins'
git push origin master
cd ./path/to/www
# you can also use git clone
git init
git remote add origin <git repository url>
git pull origin master
composer install
cd ./path/to/www
git pull origin master
# never run composer update in production
composer install
It happens often that you want to make pull requests or update your plugins while you are working on a project. What I do is require plugins with --prefer-source flag.
composer require hypejunction/hypefeed --prefer-source
# make some changes
cd hypeFeed
git checkout master
git commit -a -m 'Changes made'
git push origin master