Пользовательские действия на Sourcetree - Не удалось posix_spawn: ошибка 8

Я пытаюсь использовать Sourcetree Custom Actions для запуска сценария оболочки:

Когда я нажимаю горячую клавишу, я получаю сообщение об ошибке:

hubSync.sh
Не удалось posix_spawn: ошибка 8
Завершено с ошибками, см. Выше

Почему Sourcetree не запускает скрипт?

3 ответа

Мне пришлось добавить в начало.sh следующее:

#!/bin/sh
cd $1

Затем в параметрах настраиваемого действия Sourcetree добавьте этот параметр:

$REPO

Таким образом, сценарий.sh получит $REPO (путь репо) в качестве параметра $1, а cd перейдет в этот каталог перед выполнением команд.

Вот еще один пример, показывающий, как это сделать: https://gist.github.com/mike3k/6125852

Это исправлено добавлением интерпретатора в первую строку вашего скрипта:

#!/bin/bash

Похоже, что Sourcetree не устанавливает интерпретатор по умолчанию для NSTask, который они используют для запуска скрипта:

https://stackoverflow.com/questions/25559608/running-shell-script-with-nstask-causes-posix-spawn-error

Для меня это смена интерпретатора на zsh вот так:

#!/bin/zsh

Другие вопросы по тегам