HG команда не работает с php

0

У меня есть базовая процедура развертывания на месте, и я хочу ее автоматизировать. Я использую php для автоматизации с Php, я вызываю сценарий оболочки. Если я использую php & shell script, команда HG не работает.

Ниже приведен пример кода.

index.php

<?php
startBuild();

function startBuild() {
    echo shell_exec('sh makeBuild.sh 2>&1');
}
?>

makeBuild.sh

#!/bin/bash
hg pull <hg-path>
hg archive -r1673 --verbose /Users/system1/Sites/Apps/001225035079/1.3

Браузер, который я запускаю

http://localhost/~system1/Sites/index.php

При выполнении веб-страницы я получаю сообщение об ошибке как "makeStandalone.sh: строка 7: hg: команда не найдена makeStandalone.sh: строка 8: hg: команда не найдена"

Если я запустил makeBuild.sh из Terminate.app, он отлично работает.

Пожалуйста, помогите мне решить эту проблему, спасибо заранее.

Теги:
mercurial

1 ответ

1
Лучший ответ

Похоже, что полный путь к исполняемому файлу hg поможет в этом случае. Измените свой сценарий так:

#!/bin/bash
/path/to/hg pull <hg-path>
/path/to/hg archive -r1673 --verbose /Users/system1/Sites/Apps/001225035079/1.3

Замените /path/to/hg правильным путем для вашей установки.

  • 0
    Спасибо Викрам, нужно немного ясности. Мой путь клонирования Hg - '/ Users / system1 / Sites / Apps /', поэтому я указал / Users / system1 / Sites / Apps / hg pull <hg-path>. Это правильно?
  • 0
    Я говорю о пути к исполняемому файлу hg, а не к хранилищу. Какой вывод which hg в терминале?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню