TortoiseSVNのエラー

もうずっとSVNTortoiseSVNにお世話になっています.毎日これがないと仕事になりません.なのですが2016年のあるときからTortoiseSVNのバージョンを上げられなくなってしまいました.そのバージョンは1.9.5です.なぜ上げられないかというと、サーバーとはsvn+sshで接続している訳なんですが、1.9.5から以降の後継のバージョンを使うと少し規模の大きなチェックアウトの時にいきなり以下のエラーになってしまうからです.

f:id:toshi_xt500:20200116224215p:plain

TortoisePlink.exeのエラー

この「Remote side unexpectedly closed network connection」というエラーメッセージ、Webであたると山ほど情報がありますが、では一体何をどうすれば良いのかというとさっぱりわかりません.しかしTortoiseSVNが使えないとおまんまの食い上げ状態になってしまうので、やむなく延々と1.9.5を使ってきました.しかし今年はもう2020年、いまだに2016年のバージョンを使い続けなければならないのはあまりにもおかしいので、ネットワークの担当者に問題提起して、調べていただきました.

すぐわかったのは、最新の1.13.1と1.9.5ではこのエラーダイアログを出している、付属するTortoisePlink.exeのバージョンが違うという事、1.9.5はバージョン0.67で、1.13.1ではバージョン0.73です.で、最新の1.13.1をインストールして、TortoisePlink.exeを古い0.67に入れ替えてしまうと、なんの問題もなく動いてくれるのです.しかし、これもいささか気持ちが悪いので、仕事をしているみんながどんなバージョンを使っているかを聞き取り調査したところ、一番古いので1.8.6、最も新しくとも1.9.5でした.なので、私のようにTortoisePlink.exeのエラーになるべくもないのです.

最終的にネットワーク担当者が、TortoisePlink.exeのオプションの違いに着目して問題を解決してくれました.0.67と最新の0.73では次のように相当違うのです.

f:id:toshi_xt500:20200116225551p:plain

TortoisePlink.exe 0.67コマンドラインオプション

f:id:toshi_xt500:20200116225724p:plain

TortoisePlink.exe 0.73のコマンドラインオプション

 TortoiseSVNのネットワーク設定には、

"C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe" -l tmakita -i "C:\Program Files\TortoiseSVN\key\id_rsa.ppk"

のようにTortoisePlinkを指定していたのですが、なんとここに0.73のオプションの-shareを加えるだけで、完全にエラーなしで動いてくれるようになりました.

"C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe" -l tmakita -i "C:\Program Files\TortoiseSVN\key\id_rsa.ppk" -share

-sharesvn+sshでファイル/フォルダ単位で細かくセッションがやりとりされるのですが、そのセッションで鍵を共有するか否かの指定との事だそうです.

おかげさまで、なんの心配もなく最新のバージョンが使えるようになりましたが、 TortoiseSVNもオプションが加わったなら、従来通りのコマンドライン指定が問題なく動くように互換のあるバージョンアップをしてくれたらたすかるのにな?と思った次第です.(と言ってもdonateもしてないので、あまり大きな口はたたけませんが⇒donateしているのはWikiPediachange.orgくらい...)