1 votes

Mettre le dépôt GitHub dans /var/www

J'ai un repo GitHub privé dont j'aimerais configurer mon serveur de test (LAMP) pour qu'il récupère automatiquement les fichiers de la branche master et les place dans la racine de mon site web (/var/www).

Ne serait-il pas possible de créer un Shell Shell qui céderait à /var/www et exécuterait ensuite git pull origin master ? Pourrais-je faire cela en utilisant une tâche CRON ?

3voto

CC. Points 232

Oui.

Créez un Shell Shell avec quelque chose comme :

#!/bin/sh
cd /var/www
git pull origin master

Vous pouvez stocker le fichier où vous voulez. Supposons que dans /scripts/ Supposons qu'il s'appelle getsite.sh

Assurez-vous que votre fichier est exécutable :

chmod +x /scripts/getsite.sh

Exécutez la commande pour vous assurer qu'elle fonctionne. Je suppose que vous avez déjà lancé git init, et configuré le repo.

/scripts/getsite.sh

En supposant que tout fonctionne bien, vous pouvez créer une entrée crontab pour l'exécuter aussi souvent que vous le souhaitez :

crontab -e

Vous aurez besoin d'une entrée du genre :

59 23 \* \* \* /scripts/getsite.sh

Cela permettrait d'exécuter le script à 23:59 tous les jours.

Lisez la page de manuel de crontab si vous avez besoin d'aide.

0voto

unhappyCrackers1 Points 977

La réponse est Oui mais vous avez quelques options différentes à considérer. L'idée de base consiste à enchaîner les événements, que vous utilisiez git-hooks, rsync, cron ou même Dropbox.

Pour plus d'idées, jetez un coup d'œil à http://debuggable.com/posts/git-tip-auto-update-working-tree-via-post-receive-hook:49551efe-6414-4e86-aec6-544f4834cda3

http://www.turnkeylinux.org/blog/website-synchronization

Faites une recherche sur git-hooks et push/pull et vous devriez trouver de nombreuses informations.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X