Использование TortoisePlink в GIT_SSH_COMMAND: переключатель «-batch» не соблюдается

#windows #git #powershell #ssh-keys #plink

#Windows #git #powershell #ssh-ключи #plink

Вопрос:

(ОС: Windows; с использованием PowerShell)

Фон

Я намерен время от времени запускать «git pull» моей службой (т.Е. Службой Windows). Для этого я использую TortoiseGitPLink для предоставления git моего SSH-ключа каждый раз, когда это необходимо. Это делается путем установки переменной env:

 $env:GIT_SSH_COMMAND="'C:/Program Files/TortoiseGit/bin/TortoisePlink.exe' -i c:/path/to/my/key/id_rsa.ppk -pw myKeyPassword"
 

В целом это работает нормально, но если я ошибаюсь и указываю неправильный путь к своему SSH-ключу или неправильный пароль, то TortoisePlink зависает на неопределенный срок, поэтому моя служба зависает. Кроме того, если я остановлю службу, процесс TortoisePlink все еще зависает.

Читая документ Plink, я нашел переключатель «-batch»:

 -batch: disable all interactive prompts
 

но по какой-то причине либо он не соблюдается, либо я использую его неправильно.

Вопрос

Есть ли способ использовать TortoiseGitPLink для надежного предоставления ключа SSH? Под «надежно» я подразумеваю: он должен завершиться неудачей, если появится какое-либо всплывающее окно или файл ключа отсутствует.