IntelliJ 2019 + SVN command line 1.7 + Windows + ssh+svn cannot create tunnel (authentication with password)
Answered
Hello,
I'm trying to use SVN from Iintellij by command line, I've installed SilkSVN, put the PATH to the command line client in the Subversion section -> tools\Silk\bin\svn.exe, selected "Enable Interactive mode",also I've put the correct url with ssh+svn and password, but it doesn't work(on Windows). I tried using the command line from the Powershell console and it works correct. But using Intellij it always return the following errors: E720002: Unable to connect to a repository at URL 'svn+ssh://... and also svn: E720002: Can't create tunnel: The system cannot find the file specified. Any ideas how this issue can be solved?
Please sign in to leave a comment.
The "The system cannot find the file specified" error likely refers to the ssh client - SVN cannot find SSH to start. This usually happens when invalid SSH settings are set in Settings | Version Control | Subversion | SSH. Double-check the config
Everything with my configuration and credentials look correct. Same configuration and credentials work with IntelliJ 2017.2 (where no SVN command line is required). Also I tried with TortiseSVN command line and Apache Subversion Cmd line, no luck. I just have updated the IntelliJ to 2019.2 and provided SVN command line tool to the subversion tab.
The screenshot shows the general SVN settings page.
The issue is likey in SSH settings - check the corresponding Settings | Version Control | Subversion | SSH page
On Windows, it is recommended to chose Password or Private key option and specify an explicit path to the executable.
Yes, it looks like that everything is configured correct, as I've explained in the previous comment the same config (without commnd line checked) works in Intellij 2017.2.

plus the error:
Error:svn: E720002: Unable to connect to a repository at URL 'svn+ssh://dzhenko.zlatev@10.10.10.111/test/trunk'
svn: E720002: Can't create tunnel: The system cannot find the file specified.
In the SSH executable field, you need to specify the path to the SSH command-line client on your machine, not the repository URL.
It is something like C:\Windows\OpenSSH\ssh.exe, depending on what SSH client you use and where it is installed.
Thanks for your help!

I've changed it to the correct ssh path:
now it doesn't throw any error in the IDE, but it looks like it is freezed during updating, checked in the intellij log and there is the following error:
If it's a long-running mostly idle daemon process, consider overriding OSProcessHandler#readerOptions with 'BaseOutputReader.Options.forMostlySilentProcess()' to reduce CPU usage.
Command line: C:\Dev\tools\Silk\bin\svn.exe --config-dir C:\Users\dzlatev\AppData\Roaming\Subversion up --revision HEAD --accept postpone C:\Dev\projects\Test --config-option "config:tunnels:ssh=C:/Windows/System32/OpenSSH/ssh.exe -q -p 22 -l dzhenko.zlatev"
java.lang.Throwable: Process creation:
at com.intellij.execution.process.BaseOSProcessHandler.<init>(BaseOSProcessHandler.java:33)
at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:151)
at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:144)
at org.jetbrains.idea.svn.commandLine.SvnProcessHandler.<init>(SvnProcessHandler.java:26)
at org.jetbrains.idea.svn.commandLine.TerminalProcessHandler.<init>(TerminalProcessHandler.java:42)
at org.jetbrains.idea.svn.commandLine.WinTerminalProcessHandler.<init>(WinTerminalProcessHandler.java:21)
at org.jetbrains.idea.svn.commandLine.WinTerminalExecutor.createProcessHandler(WinTerminalExecutor.java:44)
at org.jetbrains.idea.svn.commandLine.CommandExecutor.start(CommandExecutor.java:120)
at org.jetbrains.idea.svn.commandLine.CommandExecutor.run(CommandExecutor.java:317)
at org.jetbrains.idea.svn.commandLine.CommandRuntime.runWithAuthenticationAttempt(CommandRuntime.java:55)
at org.jetbrains.idea.svn.api.BaseSvnClient.execute(BaseSvnClient.java:122)
at org.jetbrains.idea.svn.api.BaseSvnClient.execute(BaseSvnClient.java:109)
at org.jetbrains.idea.svn.api.BaseSvnClient.execute(BaseSvnClient.java:95)
at org.jetbrains.idea.svn.update.CmdUpdateClient.run(CmdUpdateClient.java:50)
at org.jetbrains.idea.svn.update.CmdUpdateClient.doUpdate(CmdUpdateClient.java:109)
at org.jetbrains.idea.svn.update.SvnUpdateEnvironment$UpdateCrawler.doUpdate(SvnUpdateEnvironment.java:84)
at org.jetbrains.idea.svn.update.AbstractUpdateIntegrateCrawler.handleWorkingCopyRoot(AbstractUpdateIntegrateCrawler.java:45)
at org.jetbrains.idea.svn.SvnUtil.crawlWCRoots(SvnUtil.java:146)
at org.jetbrains.idea.svn.SvnUtil.crawlWCRoots(SvnUtil.java:132)
at org.jetbrains.idea.svn.update.AbstractSvnUpdateIntegrateEnvironment.updateDirectories(AbstractSvnUpdateIntegrateEnvironment.java:80)
at com.intellij.openapi.vcs.update.AbstractCommonUpdateAction$Updater.runImpl(AbstractCommonUpdateAction.java:350)
at com.intellij.openapi.vcs.update.AbstractCommonUpdateAction$Updater.run(AbstractCommonUpdateAction.java:324)
at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:894)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:169)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:591)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:537)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:59)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:156)
at com.intellij.openapi.progress.impl.CoreProgressManager$4.run(CoreProgressManager.java:408)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:294)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
> but it looks like it is freezed during updating
Do you mean that IDE freezes or just the background process keeps running?
What is the result of executing C:\Dev\tools\Silk\bin\svn.exe --config-dir C:\Users\dzlatev\AppData\Roaming\Subversion up --revision HEAD --accept postpone C:\Dev\projects\Test --config-option "config:tunnels:ssh=C:/Windows/System32/OpenSSH/ssh.exe -q -p 22 -l dzhenko.zlatev" in the commnad line?