SVN+SSHでsvnのユーザ名がsshのユーザ名になってしまうので困った。--usernameも効かないし。
authorized_keysを使うことで、いろんな人が同じsshアカウントでコミットできるようになるようだ。


ここでは
リポジトリのあるSSHホストのユーザ名: sshuser
リポジトリのあるSSHホストのホスト名: sshhost
svnのユーザ名: svnuser
クライアントマシンのキーの保存先: /home/localuser/.ssh
とする。

専用のキーを作る
■クライアントで作業
ssh-keygen -t dsa -b 1024 -f /home/localuser/.ssh/svn_id_dsa

cat ~/.ssh/svn_id_dsa.pub
ssh-dss ....


■リポジトリのあるサーバで作業
vi  ~/.ssh/authorized_keys
command="svnserve -t --tunnel-user=svnuser",no-port-forwarding,
no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss ......

※実際は1行、no-ptyの後にあるスペースから先をsvn_id_dsa.pubの内容にする


■クライアントで作業
export SVN_SSH="ssh -l sshuser -i /home/localuser/.ssh/svn_id_dsa"
svn co svn+ssh://sshhost/レポジトリへのパス .


こんな感じ