Нужна серьезная помощь.
Здача стоит так: использовать mercurial API через php
У меркуриала есть командочка hg, с которой я успешно игралась...
И казлось нет проблем выполнять её из php proc_open
<?php
error_reporting(E_ALL);
ini_set('display_errors','on');
echo '<pre>';
$cwd = '/var/www/hgrepo/';
proc('ls','-l');
//proc('hg','--config ui.interactive=yes');
proc('hg','-v log');
echo '=============='."\n";
function proc($proc,$param)
{
global $cwd;
echo '====== proc ========'."\n";
echo "$proc $param\n";
$descriptorspec = array(
0 => array("pipe", "r"), // stdin is a pipe that the child will read from
1 => array("pipe", "w"), // stdout is a pipe that the child will write to
2 => array("file", "/var/www/html/pm/services/support/hg/out.txt", "a") // stderr is a file to write to
);
$env = null;
$process = proc_open($proc, $descriptorspec, $pipes, $cwd, $env);
if (is_resource($process)) {
fwrite($pipes[0], $param);
fclose($pipes[0]);
echo "\n 1: ". stream_get_contents($pipes[1]);
fclose($pipes[1]);
$return_value = proc_close($process);
echo "command returned $return_value\n";
}
}
proc('ls','-l'); - выводит список файлов, всё хорошо
proc('hg','-v log'); - должен вывести лог...
полагаю что это равно ввожу
hg -v log
в командную строку в нужной мне директории
а он выводит мне информацию, буд-то я ошиблась.. даже не знаю синтаксисом или ещё чем похожим.... Я не понимаю, почему такая обратная связь :(