Как использовать svn + ssh с Tortoise SVN из командной строки - программирование
Подтвердить что ты не робот

Как использовать svn + ssh с Tortoise SVN из командной строки

У меня возникли проблемы с проверкой репо с использованием следующего синтаксиса на рабочей станции Windows 7 с помощью TortoiseSvn:

svn co svn+ssh://[email protected]/repo .

Что я сделал, чтобы проверить эту проблему:

  • Изменены сетевые настройки TortoiseSvn, чтобы указать на.. \TortoisePlink.exe
  • Успешно установлено соединение ssh с целевой машиной без проблем
  • Успешно проверил репозитории с рабочих станций под управлением Ubuntu с OpenSsh

Когда я пытаюсь выполнить вышеупомянутый синтаксис из командной строки на рабочей станции Windows 7, я получаю сообщение об ошибке:

svn: E720087: Unable to connect to a repository at URL 'svn+ssh:///[email protected]/repo'
svn: E720087: Can't create tunnel:The parameter is incorrect.

Интересно, что если я использую черепаху gui для перехода на репо, я могу успешно открыть и проверить репо. Но мне нужно сделать это из командной строки для создания сценариев.

Любые предложения?

4b9b3361

Ответ 1

Чтобы svn + ssh работал с Tortoise, убедитесь, что %SVN_SSH% установлен на ваш ssh-клиент (возможно, plink.exe из Tortoise или Putty), и путь должен быть написан либо с помощью косой черты /, либо с экранированными обратными косыми чертами \\.

Попробуйте установить %SVN_SSH% с абсолютным путем plink, избегая обратных косых черт, что-то вроде C:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe вместо ..\TortoisePlink.exe

Ответ 2

  • Подключитесь к серверу, используя Plink, вручную. Определите необходимые и правильные (для вас) параметры запуска plink.
  • Добавьте эту строку (используйте tortoiseplink как windowless-plink) в %APPDATA%config файл, [tunnels] раздел

Ответ 3

Также оказывается, что строка в разделе Tunnels конфигурационного файла чувствительна к регистру.

Например: sh = $SVN_SSH "C:/path/putty/plink.exe" -2 -C -i "C:/path/username/serversvn.ppk" может работать

и

sh = $SVN_SSH "C:/path/PuTTY/plink.exe" -2 -C -i "C:/path/username/serversvn.ppk" не будет работать