How to run TortoisePlink from command line?

289 views
Skip to first unread message

Kenneth Johnson

unread,
Aug 16, 2022, 2:29:52 PM8/16/22
to TortoiseSVN
I use TortoisePlink in the default configuration with TortoiseSVN 1.14.3.  As far as I can determine, it works flawlessly with TortoiseSVN in every respect, using a Pageant-compatible agent with a Yubikey for authentication.

In order to test some proposed changes to my /usr/local/bin/svnserve bash script on the svn server, I need to be able to run TortoisePlink from the command line.  This does not work for me.

This command:
c:\Program Files\TortoiseSVN\bin>TortoisePlink.exe -v kjoh...@10.10.10.16 svnserve --help

returns immediately with no output.  The message in the server's /var/log/auth.log file is:

Aug 16 13:17:30 localhost sshd[1026]: Connection closed by authenticating user kjohnson 10.10.10.32 port 28387 [preauth]

If I use plink.exe from the regular putty distribution on the command line, it works in the expected way.

c:\Program Files\PuTTY\> plink -batch kjoh...@10.10.10.16 svnserve --help
usage: svnserve [-d | -i | -t | -X] [options]
Subversion repository server.
Type 'svnserve --version' to see the program version.
...

Using the -sshlog option for TortoisePlink did not create a log file (nor any error messages).

Is there some way to make TortoisePlink give me a useful error message in this situation?  Right now I feel pretty stuck.

Ken
...

Kenneth Johnson

unread,
Aug 17, 2022, 1:35:12 PM8/17/22
to TortoiseSVN
Perhaps I will have better luck with a different question.  Can anyone give me pointers to finding the invocation of TortoisePlink.exe in the TortoiseSVN source code?  Perhaps I would learn something from seeing what options are used in that situation.

Ken

Stefan

unread,
Aug 17, 2022, 1:39:58 PM8/17/22
to TortoiseSVN
On Tuesday, August 16, 2022 at 8:29:52 PM UTC+2 Kenneth Johnson wrote:
I use TortoisePlink in the default configuration with TortoiseSVN 1.14.3.  As far as I can determine, it works flawlessly with TortoiseSVN in every respect, using a Pageant-compatible agent with a Yubikey for authentication.

In order to test some proposed changes to my /usr/local/bin/svnserve bash script on the svn server, I need to be able to run TortoisePlink from the command line.  This does not work for me.

This command:
c:\Program Files\TortoiseSVN\bin>TortoisePlink.exe -v kjoh...@10.10.10.16 svnserve --help

returns immediately with no output.  The message in the server's /var/log/auth.log file is:

That's by design!
TortoisePlink was specifically designed to NOT show any console window, because you don't want to pop up a console window every time an authentication is required.
So if you need console output, you have to use either the ssh client that comes with Windows or just use plain plink.exe instead.

Stefan

Kenneth Johnson

unread,
Aug 17, 2022, 3:03:09 PM8/17/22
to TortoiseSVN
Stefan,

Thank you for your reply. 

So, I thought that after authentication, TortoisePlink would run svnserve -t, with data for the connection moving over stdin/stdout.  I assumed that TortoiseSVN redirected stdin/stdout from TortoisePlink to itself, and at that point TortoiseSVN is connected to svnserve.  Is that not how it works? 

Is there some other way I can can capture output or errors from TortoisePlink?  Where does TortoisePlink send stdout and stderr?

To be clear, I am only interested in this in order to troubleshoot a separate problem.  My proposed changes to my  /usr/local/bin/svnserve bash script don't work with TortoiseSVN and TortoisePlink, so I am trying so see what goes wrong with the connection.  Do I need to substitute ordinary Plink in the TortoiseSVN network configuration, because it can report errors?

Ken

Stefan

unread,
Aug 17, 2022, 3:09:34 PM8/17/22
to TortoiseSVN
On Wednesday, August 17, 2022 at 9:03:09 PM UTC+2 Kenneth Johnson wrote:

Is there some other way I can can capture output or errors from TortoisePlink?  Where does TortoisePlink send stdout and stderr?

nowhere! As mentioned: TortoisePlink does NOT have a console window, and therefore no stderr/stdout to write errors.
You can not use TortoisePlink to debug problems, you have to use plain old plink for that.
TortoisePlink is plain Plink with modifications so that all stdout/stderr/... are removed and sometimes replaced by error dialogs, and also compiled as a window app instead of a console app.
 
To be clear, I am only interested in this in order to troubleshoot a separate problem.  My proposed changes to my  /usr/local/bin/svnserve bash script don't work with TortoiseSVN and TortoisePlink, so I am trying so see what goes wrong with the connection.  Do I need to substitute ordinary Plink in the TortoiseSVN network configuration, because it can report errors?


to troubleshoot, use plink instead of TortoisePlink so you get visible output.

Kenneth Johnson

unread,
Aug 17, 2022, 3:13:40 PM8/17/22
to TortoiseSVN
Stefan,

Thanks for your reply.

Ken
Reply all
Reply to author
Forward
0 new messages