Настройка внешнего клиента контроля версии (svn, git и т.п.) через тонель ssh

Установив какое-то время назад новую версию любимой IDEшки PhpStorm 8.X стал замечать что встроеная система контроля версий, а я работаю сейчас с svn, как-то плохо работает: при больших объемах файлов подвисает гораздо дольше, работает не транзакционно (во время комита, если случилась ошибка, часть файлов отстается закомиченой часть нет), а главное после того как комит прошел (все окна диалогов закрыты, все фоновые задачи по комитам закончены) выяснилось что на самом деле процессы еще не закончены и работа с системой контроля версии идет полным ходом.

Было принято решеение использовать внешний клиент контроля версии, а так как сервер Svn находится на удаленном линукс-сервере, для связи используется ssh тунель (ссылка на репозиторий начинается на svn+ssh).

В процессе работы мы иногда используем утилиту TortoiseSVN - логи посмотреть, дифф глянуть. Вот для настройки она нам и пригодится.

В PhpStorm'е открываем настройки

Settings > Version Control > Subversion

и ставим галочку на против "Use command line client" там же указываем путь к клонсольному клиенту TortoiseSVN. У меня он по адресу "C:\Program Files\TortoiseSvn\bin\svn.exe"

потом ставим галочку на против "Use system default Subversion configuration directory" ниже, на против "Subversion cinfiguratuin directory" появиться путь откройте его найдите файл конфигурации

в секции туннеля нужно раскомментировать (или написать рядом свою) опцию ssh в ней нужно указать путь к plink.exe (консольная утилити ssh). Я использую plink из пакета putty это удобно так как в этой утилите все настройки к серверу сделаны и можна передавайть имена настроек вместо ип сервера. Если у вас контроль доступа к ssh через ключ то можно прописать в этой же строке после пути к plink "-i <путь\\к\\файлу.ppk>"  путь к файлу ppk который прописан в putty для доступа по ключу