Как я могу вручную запустить прием после получения на git? - PullRequest
15 голосов
/ 06 февраля 2012

Я перенес веб-сайт на свой удаленный сервер через Git, но получил ошибку

cannot run post-receive: No such file or directory

Итак, материал находится на сервере, он просто не был развернут в моей / публичной папке.

Однако у меня есть файл после получения, поэтому я не уверен, почему он не был найден. Теперь я подумал, что все, что мне нужно сделать, это вручную запустить этот крюк после получения, чтобы оформить заказ, хотя я не знаю, как ...

1 Ответ

22 голосов
/ 06 февраля 2012

Хук - это исполняемый скрипт оболочки.Вы можете выполнить его из командной строки, если вам нужно запустить его вручную, хотя создание ожидаемого inuput stdin несколько утомительно, если в вашем репо более одной головы (то есть вы используете ветки).Должна быть команда низкого уровня, чтобы сделать это для вас, но я не знаю, что это не так.

Предполагается, что оболочка bash и одна ветка в вашем git-репо ...

# Print the log with full hashes and commit subject, so that you can
# figure out which hashes to use for the FROM and TO range.
/path/to/repo$ git log --pretty=%H\ %s

# assuming the FROM commit identifies as 999988887777
# and te TO commit identifies as 000011112222
# (Note: use the full length hashes; I've shortened them for the example)
/path/to/repo$ .git/hooks/post-receive <<MARK
999988887777 000011112222 refs/heads/master
MARK

... вышесказанное должно работать так же, как реальная вещь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...