J’essaye de pousser les changements de ma machine locale vers un serveur live. J’ai suivi les étapes sur cette page .
Sur ma machine locale , voici ce que je reçois quand je lance: $ git push web
Counting objects: 3, done. Delta compression using up to 8 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 291 bytes | 0 bytes/s, done. Total 3 (delta 2), reused 0 (delta 0) remote: /bin/bash: GIT_WORK_TREE=/var/www/html git checkout -f: No such file or directory To ssh://MyDomainRemoved.com/var/git/myproject.git d8a9173..7903ea9 master -> master
Sur le serveur live , le nouveau commit apparaît dans $ git log
. Il a des problèmes avec le crochet post-réception . Voici à quoi ressemble le fichier après réception:
#!/bin/bash GIT_WORK_TREE=/var/www/html git checkout -f
Quelques choses que j’ai déjà essayées à partir d’autres fils que j’ai lus:
#!/bin/bash
et #!/bin/sh
#!/bin/bash
. Cela a permis à bash de fonctionner sans erreur ouverte, mais a toujours une erreur de fichier non. Le serveur est Ubuntu 16.04.
Des idées d’autres choses à essayer?
Assurez-vous d’avoir votre script sur plusieurs lignes au lieu d’une:
#!/bin/bash GIT_WORK_TREE=/var/www/html git checkout -f
La commande complète serait:
git --work-tree=/var/www/html --git-dir=/var/git/myproject/.git checkout -f