Home > Blog > 【macOS Big Sur】 git svn の Can't locate SVN/Core.pm を解決する

Blog

【macOS Big Sur】 git svn の Can't locate SVN/Core.pm を解決する

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

これで以前同様の快適生活に戻れました!

 

Comment on this article

コメントはまだありません。

Send comments

必須
必須  
※ メールアドレスは公開されません
任意
必須