Git Pull Automatico
È possibile installare uno script per automatizzare le operazioni da eseguire dopo ogni git pull. Basta scaricare il file installer nella cartella root del progetto e poi eseguire i seguenti comandi:
chmod +x installer.sh
./installer.sh
L'installer crea il file post-merge all'interno di .git/hooks/ contenente al suo interno le operazioni da eseguire in automatico.
Cosa succede?
Quando si fa un pull con git, vengono eseguite due operazioni:
- git fetch per sincronizzare il repository con origin
- git merge per fare il merge dei contenuti in locale
Tutte le volte che avviene un git merge, lo script post-merge appena creato viene eseguito. Se il git pull non trova modifiche su origin, o se la merge fallisce per un conflitto tra i file, post-merge non viene chiamato e bisogna eseguire le operazioni necessarie manualmente.
Che comandi vengono eseguiti?
Lo script è strutturato con in mente un progetto Laravel. Vengono quindi eseguiti i comandi:
composer update
vessel start
vessel art migrate
vessel art db:seed
Come si modifica lo script?
Per modificare le operazioni da eseguire, basta cambiare il contenuto del file .git/hooks/post-merge.