Details
-
New Feature
-
Status: Open
-
Major
-
Resolution: Unresolved
-
---
-
None
Description
There should be a way to tell the svn client what command to execute on the server. I suggest that rather than appending "svnserve -t" to the tunnel command, ~/.subversion/config should include the remote command in the tunnel's spec (although another option is to add a new knob to change "svnserve -t" to something else for a particular tunnel spec). I like the following syntax: [tunnels] wrapper1 = ssh -s $svnhost svn wrapper2 = ssh $svnhost 'sudo -u svn svnserve-wrapper' wrapper3 = if [ x$SSH_AUTH_SOCK != x ]; then ssh $svnhost svnserve -t; else rsh $host svnserve -t; fi You could implement this by simply exporting $svnhost as an environment variable and run the command through /bin/sh -c. I would also suggest that the wrapper1 example should be the default, since SSH2 subsystems are much more suited to this than executing a command through a shell; however this detail would require adding a line to sshd_config on the server: "Subsystem svn /usr/local/libexec/svnserve", and making -t default (since it seems that ssh can't deal with command-line args in the subsystem command).
Original issue reported by bilbo1507