Using Post-Receive Hooks
to deploy muliple projects automatically.
Ref: https://developer.github.com/webhooks/
PHP-Git-Deploy works with PHP 5.3 or later.
Create a composer.json file in your project root and use it to define simply your dependencies:
{
"require": {
"appleboy/php-git-deploy": "1.0.*"
}
}
Then install Composer in your project (or download the composer.phar directly):
$ curl -s http://getcomposer.org/installer | php
And finally ask Composer to install the dependencies:
$ php composer.phar install
Download and drag the following files into your application/
folder.
$ cp -r src/Web your_www/
open src/Web/config.php
file with your editor. Following is config formats.
$config['github'] = array(
'project_name' => array(
'branch_name' => array('base_path' => 'folder_path')
)
);
project_name
must be the same with your github project name, for example:
Your github project URL is https://github.com/appleboy/PHP-Git-Deploy
The project_name
value is PHP-Git-Deploy
, don't case sensitive.
Please refer the following example profiles.
array(
'php-git-deploy' => array(
'master' => array('base_path' => '/path/PHP-Git-Deploy_1/'),
'develop' => array('base_path' => '/path/PHP-Git-Deploy_2/')
)
);
array(
'php-git-deploy' => array(
'master' => array('base_path' => '/path/PHP-Git-Deploy_1/'),
'develop' => array('base_path' => '/path/PHP-Git-Deploy_2/')
),
'codeigniter-my-model' => array(
'master' => array('base_path' => '/path/CodeIgniter-MY-Model_1/'),
'develop' => array('base_path' => '/path/CodeIgniter-MY-Model_2/')
)
);
Create new file your_www/Web/index.php
, copy the following source code and paste into index.php file.
<?php
require_once('Deplpoy.php');
$deploy = new \Web\Deploy;
$deploy->index();
Please refer the Post-Receive Hooks Helper page
Bo-Yi Wu (appleboy) appleboy.tw@gmail.com