Встановивши якийсь час тому нову версію улюбленої 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. Це зручно, оскільки в цій утиліті усі налаштування до серверу вже зроблено і можна передавати імена налаштувань замість IP сервера.
Якщо у вас контроль доступу до ssh через ключ то можна прописати в цім же рядку після шляху до plink "-i <шлях\\до\\файлу.ppk>" шлях до файлу ppk котрий прописаний в putty для доступу по ключу.