Rubyのバージョンを3.2.2に切り替えるには以下のようにすればよいと思っていました。
rbenv global 3.2.2
実行後に以下を実行してもsystemになったまま。。。うーん。
rbenv versions
rbenv versionsを実行すると以下の表示になります。ここにヒントがありました。
Desktop % rbenv versions * system (set by /Users/hogehoge/Desktop/.ruby-version) 2.7.5 3.2.2
このメッセージの読み方としては、 rbenvでバージョンがsystemに設定されているんだけど、それってUsers/hogehoge/Desktop/.ruby-versionで指定されているからだよ〜 ということでした。
つまり、Desktopに.ruby-versionというファイルがあり、そこにsystemが指定されているのでバージョンはその指定を優先しています、ということになります。これってrbenv local 3.2.2ってDesktopで実行すると生成されるファイルで、このディレクトリで作業するときには3.2.2にしたいという意思表示をシステム(rbenv)に示したことに起因しているわけでした。つまり自分のせいってことですorz
解決方法としては、この.ruby-versionを削除すればよく 、.ruby-versionがカレントディレクトリ内になければ rbenv globalで指定したバージョンに従って決定されるわけです。はい。
学生に「手順だけ理解せずに意味も考えよう」と思って接しているつもりでしたが自分も同じした💦なんとも情けないことです。
どこまでをブラックボックスにすべきかは難しい時代ですね。すべての仕組みを理解したのがスーパーエンジニアと言われるんでしょうけど、借り物競走的、あるいは巨人の肩に乗る時代ですから、動けばよい場合もあるわけで。言い訳ですけどね。。。
とりあえず勉強になりました(ってすぐに忘れるでしょうけど)。