Поскольку я использую ProcessInfo< /code> было больше проблем, чем пользы. Я решил использовать Powershell. А именно System.Management.Automation (с Microsoft.PowerShell.SDK, потому что иначе он, конечно, не работает).
Я добрался до момент, когда я успешно угадал, как запускать команды Powershell с указанными nugets.
Однако, когда я пытаюсь запустить следующий код (
Код: Выделить всё
workDirКод: Выделить всё
public static void RunPowerShellCmd(string workDir)
{
using PowerShell powerShell = PowerShell.Create();
powerShell.Runspace.SessionStateProxy.Path.SetLocation(workDir);
powerShell.AddScript("git fetch --all");
var result = powerShell.Invoke();
}
ssh: не удалось разрешить имя хоста gitlab.xxxxxxxx.xxx: имя или служба неизвестны
неустранимая ошибка: невозможно прочитать из удаленного репозитория.
System.Management.Automation.RemoteException
Убедитесь, что у вас есть правильные права доступа
и репозиторий существует.
Я понятия не имею, почему, поскольку запуск git status завершается успешно — в этом случае powerShell.HadErrors имеет значение false, а переменная result содержит вывод команды.
Ситуация одинакова как с git fetch --all, так и с git fetch.
Я не понимаю почему, может кто-нибудь помочь мне это исправить?
Подробнее здесь: https://stackoverflow.com/questions/791 ... hell-fails
Мобильная версия