Eu tenho um script que executo por SSH, que atualiza meu site a partir de um repositório Git.
cd website-git
git checkout master
git pull
# Update protected directory
rsync -v -a --delete --exclude=db --exclude=vendor ./protected/ /home/protected
# Update public directory
rsync -v -a --delete --exclude=tmp --exclude=data ./public/ /home/public
Funciona bem, mas o repositório git tem 150 MB e eu pago pelo espaço utilizado, então essa não é uma solução muito boa.
Além de deletar a cópia de trabalho (inicialmente obtida com git clone
) após retirar os arquivos dela, existe alguma maneira de economizar espaço com esta configuração?
Responder1
Você deve investigar como usarCapistranopara implantar seu código PHP em vez de reinventar a roda com um script Bash como este. Capistrano é basicamente uma série de scripts Ruby que, por sua vez, executam uma série de comandos Bash para implantar código de um repositório de código em um servidor remoto.
Embora Capistrano seja usado principalmente no mundo do desenvolvimento Ruby, eu o usei em vários projetos PHP e funciona muito bem.Este é um bom tutorialsobre como adaptar o Capistrano para uso em aplicações PHP. Idemcom este.
Se o espaço for uma preocupação, depois de configurar os scripts Capistrano, certifique-se de definir a :keep_releases
configuração para algo baixo, como 2 ou 3, como este no script Capistrano:
set :keep_releases, 3