git-svn が動かねー
リポジトリがSVNにて運用されているプログラムのメンテナンスが多々あるので git-svn 使っているのですが、macOS Big Surにしたら動かなくなったのでその解決策です。
まず、Xcode から svn(subversion)関連なくなってしまっていました。
svn: error: The subversion command line tools are no longer provided by Xcode.
https://developer.apple.com/documentation/macos-release-notes/macos-catalina-10_15-release-notes
Oh.... git svnもなくなってしまいましたと。
仕方ないので
brew install subversion
brew install git
で別途入れているのですが、これまた git , svn それぞれは大丈夫なのですが、 git-svnが動かない。
ググってみると、色々情報が出てくるので、新しめの情報であれこれ試してみたのですが、やはり動かない。
https://qiita.com/96usa_koi/items/c0275222a26b604a96b2
CPANで無理やりSVN::Core 入れてみたりしたのですが、結局動作せず一旦諦めました。
Docker orlandocaro/git-svn を試す
DockerHubに git-svn container image というのがあったので試してみました。
https://hub.docker.com/r/orlandocaro/git-svn
docker run --name $USER-git-svn --rm -it --volume /opt/svn:/opt/svn:ro --volume $PWD:/data orlandocaro/git-svn bash
うん、いい感じですね。
※ 初回実行時のみエラーが出たので、よく見てみると Docker の Preferences → Resources → File sharing に /opt/svn を登録する必要がありました。
毎回コマンドをつらつら入力するのは大変なので .bash_profileにエイリアス登録して
alias gitsvn='docker run --name $USER-git-svn --rm -it --volume /opt/svn:/opt/svn:ro --volume $PWD:/data orlandocaro/git-svn bash'
とかして使っていました。
でも、動作が遅い。
いや、MacのDockerのファイルアクセスが遅いとのことです。
仕方ないので、これで動作するし、まあいいっかとしばらく使ってたのですが、やっぱりストレス!
シンボリックリンクで解決!
https://qiita.com/chakiralu/items/4000aacf3a39be07be2a を参考にさせていただきました。
細かいバージョンが自分のmacでは異なっていたので置き換えてシンボリックリンク貼ったところ、バッチリgit svn 動作しました。
ln -sf \
/usr/local/opt/subversion/lib/perl5/site_perl/5.30.2/darwin-thread-multi-2level/SVN \
/usr/local/Cellar/git/2.32.0/share/perl5
ln -sf \
/usr/local/opt/subversion/lib/perl5/site_perl/5.30.2/darwin-thread-multi-2level/auto \
/usr/local/Cellar/git/2.32.0/share/perl5
これで以前同様の快適生活に戻れました!