Запуск этого в bash в моем ящике Homestead работает: symbRefHead=$(git symbolic-ref -q HEAD) && echo $symbRefHead && branch_name="${symbRefHead//refs\/heads\/}" && echo $branch_name
Так почему же запуск через runLocally не работает?
$options = ['tty' => true];
runLocally('symbRefHead=$(git symbolic-ref -q HEAD) && echo $symbRefHead && branch_name="${symbRefHead//refs\/heads\/}" && echo $branch_name', $options);
Я получаю эту ошибку:
sh: 1: Bad substitution
In Process.php line 250:
The command "symbRefHead=$(git symbolic-ref -q HEAD) && echo $symbRefHead && branch_name="${symbRefHead//refs\/heads\/}" && echo $branch_name" failed.
Exit Code: 2(Misuse of shell builtins)
Точно так же эта версия работает в Bash, но не в runLocally: symbRefHead=$(git symbolic-ref -q HEAD) && echo $symbRefHead && to_be_removed="refs/heads/" && branch_name="${symbRefHead/$to_be_removed/}" && echo $branch_name
Очевидно, я пытаюсь удалить подстроку из строковой переменной (поиск и замена ничем), как указано здесь: https://unix.stackexchange.com/questions/104881/remove-particular-characters-from-a-variable-using-bash#comment437753_104887
P.S. В конечном итоге я хочу получить имя ветки в переменной, чтобы я мог повторить его здесь: https://stackoverflow.com/a/59689871/470749
git symbolic-ref -q HEAD
с подпроцессом, а затем выполнить синтаксический анализ вывода с помощью php? - person jordanm   schedule 06.02.2020