3 votes

Les modifications apportées par un serveur Web à un dépôt Github en PHP ne fonctionnent pas.

J'essaie d'écrire un petit script PHP qui peut repérer toutes les modifications d'un repo git local sur mon serveur web et les pousser vers mon repo Github (privé). Pousser et tirer depuis le repo Github en utilisant Atom fonctionne parfaitement, pousser les changements vers le serveur web en utilisant un webhook fonctionne parfaitement, pousser et tirer les mises à jour sur le serveur web via la ligne de commande fonctionne parfaitement, mon problème est d'essayer de commiter et pousser les mises à jour sur le serveur web vers mon repo Github en utilisant PHP. Comment faire ?

Si je dois modifier, ajouter ou même supprimer un modèle entier sur le serveur manuellement, je peux valider ces modifications et les pousser vers Github en utilisant la ligne de commande comme ceci sans problème :

git add --all
git commit -m "from server"
git push -u origin master

Mais lorsque j'essaie de le faire en utilisant un script PHP, cela ne fonctionne jamais et je n'obtiens aucun message d'erreur (j'essaie même avec des pauses) :

$output = `git add --all`;
echo $output;
sleep(1);

$output = `git commit -m "from server"`;
echo $output;
sleep(3);

$output = `git push -u origin master`;
echo $output;
sleep(3);

Si je lance quelque chose de simple comme git --version ', ' git config --list ou git status ' il fonctionne parfaitement à partir de ces scripts, donc je suis perdu.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X