Задать вопрос
@ImVeryStupid

Сannot run hooks/post-receive: No such file or directory?

Пробую настроить быстрое развёртывание php с локального пк на удалённый сервер используя git хуки вот по этой статье.
Там предлагается добавить файл post-receive с содержимым
#!/bin/bash
TARGET="/home/webuser/deploy-folder"
GIT_DIR="/home/webuser/www.git"
BRANCH="master"

while read oldrev newrev ref
do
    # only checking out the master (or whatever branch you would like to deploy)
    if [ "$ref" = "refs/heads/$BRANCH" ];
    then
        echo "Ref $ref received. Deploying ${BRANCH} branch to production..."
        git --work-tree=$TARGET --git-dir=$GIT_DIR checkout -f $BRANCH
    else
        echo "Ref $ref received. Doing nothing: only the ${BRANCH} branch may be deployed on this server."
    fi
done

в папку hooks bare-репозитория на удалённом сервере.

Вроде всё сделал правильно,
вплоть до chmod 777 post-receive
но когда делаю push на локальном - получаю:
fatal: cannot run hooks/post-receive: No such file or directory


причём если заменить в файле строчку
if [ "$ref" = "refs/heads/$BRANCH" ];
на
if [ "refs/heads/master" = "refs/heads/$BRANCH" ];
и выполнить файл в удалённой консоли, то всё разворачивается как надо и куда надо.

Так а что меняется при пуше с локального пк?
  • Вопрос задан
  • 134 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ImVeryStupid Автор вопроса
удалил строку
#!/bin/bash
и понеслась.

так и ехать или чревато?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы