à 服务器A
的/home/work/
目录下创建了仓库/home/work/my-project.git
volonté/home/work/my-project.git
克隆到网站根目录/home/www/
Configurégit post-receive hook
#!/bin/bash
cd /home/www
env -i git pull
De cette façon à chaque fois git push
的时候,都可以把代码更新到服务器A
的/home/www
sous l'annuaire
Et si je suis 服务器B
也克隆了/home/work/my-project.git
到目录/home/www/
下。有没有什么办法每次执行git push
的时候,同时到服务器A
和服务器B
执行git pull
en opération ?
Mon approche actuelle est 服务器B
上加一个crontab定时任务
,每分钟到/home/www/
目录下执行一下git pull
,这样虽然也可以达到自动git push
efficace, mais il y a aussi un décalage horaire.
Avez-vous de meilleures pratiques ?
Si
服务器A
能通过ssh访问服务器B
, vous pouvez ajouter une ligne dans le hook post-receive gitAprès chaque push git, le serveur A clonera /home/work/my-project.git dans le répertoire racine du site Web /home/www/, et en même temps, il synchronisera /home/www/ avec /home du serveur B. via rsync
/www/