Enquanto trabalhava em http://tentaclecms.com , precisava de uma solução simples para testar o código em um servidor web remoto.
No passado, eu trabalhava localmente e sincronizava com o FTP para o servidor e depois testava fora do servidor remoto, usei o SVN para meu controle de origem. No ano passado, comecei a trabalhar localmente e usar o Git como meu principal controle de origem.
Isso deixou uma pequena lacuna no meu processo onde eu não poderia mais testar em um servidor remoto sem atualizá-lo manualmente por S / FTP ou abrir o terminal e fazer manualmente um git pull.
Eu criei um helper Git muito simples e dei a ele sua própria URL, algo como git / pull .
Em seguida, usei um Github Post-Receive URL Hook encontrado em admin / service hooks que apontava para o meu servidor de teste git pull URL, cada vez que faço um push para o Github, o Github dispara automaticamente o URL, acionando o pull helper.
Uma pequena observação é que, se você verificar um branch de desenvolvimento em um servidor de teste e também tiver um servidor ativo, deverá adicionar uma segunda URL com o mesmo código nesse servidor de fígado. Um toque atualizaria os dois sites.
Apenas certifique-se de que o servidor ativo está no branch correto.
Se você não quiser usar um anzol, não há problema algum. Basta chamar a URL no navegador e você verá a mensagem pull do Git.
/**
* Git Pull
*
* @author Adam Patterson
* http://www.adampatterson.ca/blog/2011/10/diy-simple-staging-server/
*
* Use: echo pull();
*/
function pull ( )
{
return shell_exec('git pull');
}
Veja o código aqui https://gist.github.com/1293697