目录
Ruby介绍
一、概念介绍
RVM:管理不同的ruby版本
ruby:ruby语言,ruby命令行工具,ruby解释器
gem:ruby的包管理器,用于管理和分享ruby库、框架和应用程序
二、安装方式
Mac 系统自带的 ruby不要卸载。
查看安装的所有ruby的位置
which -a ruby
概述:Ruby的安装有三种方式
rvm 安装
rbenv 安装
homebrew 安装
前两种方式为官方推荐:https://www.ruby-lang.org/zh_cn/j
RVM安装
一、RVM 安装 Ruby
RVM 提供了强大的 Ruby 版本管理功能,允许你在系统中安装和切换不同的 Ruby 版本。
RVM不仅仅是用来管理ruby的不同版本,目前也做为标准的ruby安装工具
Homebrew 不再支持 RVM(Ruby Version Manager)的安装,因为 Homebrew 本身是另一个包管理器。
而 RVM 是一个用于管理 Ruby 版本的工具,两者可能会发生冲突。
所以,如果你想安装 RVM,最好使用 RVM 的官方安装方法。
以下是使用 RVM 官方安装方法的步骤:
1、卸载 Homebrew 中的 Ruby:
如果你之前使用 Homebrew 安装了 Ruby,建议卸载 Homebrew 中的 Ruby 版本,以避免潜在的冲突。
你可以使用以下命令来卸载 Homebrew 中的 Ruby:
brew uninstall --force ruby
2、安装 RVM:打开终端,并使用以下命令来安装 RVM: 参考文章:https://juejin.cn/post/7067845821290676232
# 安装gpg
brew install gnupg
# 安装mpapis公钥
gpg --keyserver hkp://pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
# 如果显示从公钥服务器接收失败则尝试下面的
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
# 如果显示连接失败将dns服务器修改为8.8.8.8 参考下面的文章
# https://stackoverflow.com/questions/59572626/curl-7-failed-to-connect-to-raw-githubusercontent-com-port-443-connection-re
\curl -sSL https://get.rvm.io | bash -s stable
# 如果在执行过程中失败可按照终端给出的提示执行下面的命令
command curl -sSL https://rvm.io/pkuczynski.asc | gpg --import -
这将下载并安装 RVM。按照安装过程中的提示来完成安装。
3、加载 RVM:安装完成后,需要加载 RVM 到你的 shell 会话中。你可以运行以下命令来加载 RVM:
source ~/.rvm/scripts/rvm
也可以将这个命令添加到你的 shell 配置文件(如 ~/.zshrc
或 ~/.bashrc
),以便每次打开终端都自动加载 RVM。
4、验证 RVM 安装:运行以下命令来验证 RVM 是否已正确配置和加载:
rvm --version
这应该显示 RVM 的版本信息,表示 RVM 已成功安装。
5、安装 Ruby 版本:使用 RVM 安装你需要的 Ruby 版本。例如,要安装 Ruby 3.0,可以运行:
rvm install 3.0
安装完成后,你可以使用 rvm use
命令来选择 Ruby 默认使用的版本。
rvm use --default 2.2.3
- 其它指令
# 设置为系统默认版本 rvm use --default 2.2.3 # 在其他版本之间切换 rvm use 2.2.1q # 卸载一个指定的版本 rmv uninstall 2.2.1
二、RVM 卸载 Ruby
显示已安装的 Ruby 版本列表
rvm list
选择你想要删除的 Ruby 版本
rvm uninstall 2.7.2
三、RVM的卸载
# 关闭终端窗口: 确保你没有在使用 RVM 的任何 Ruby 版本,关闭所有终端窗口
# 删除 RVM: 在终端中运行以下命令,它会删除 RVM 及其相关文件
# 这个命令会询问你是否确定删除 RVM,输入 yes 然后按 Enter。
rvm implode
# 删除配置: RVM 会在用户主目录下创建一些配置文件,需要手动删除。运行以下命令
rm -rf ~/.rvm
# 删除 Shell 配置: RVM 可能会修改你的 shell 配置文件(比如 ~/.bashrc、~/.bash_profile、~/.zshrc 等)。
# 打开这些文件,删除包含 RVM 相关的行。例如:
# Remove these lines from your shell configuration file
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
# 重新启动终端: 重新启动你的终端,以使更改生效。
# 验证卸载: 运行以下命令检查是否成功卸载 RVM:
rvm --version
rvenv安装和卸载
查看此文档:https://snyk.io/blog/how-to-install-ruby-in-mac-os/
或者 chatgpt
一、使用 rbenv 安装ruby
检查是否安装了rbenv,可以使用homebrew安装
rbenv -v
brew install rbenv ruby-build
初始化rbenv
rbenv init
列出可用的 Ruby 版本,如果看不到是因为没有安装 ruby-build,先执行 brew ruby-build
rbenv install -l
安装所需的 Ruby 版本
rbenv install 3.0.0
设置全局 Ruby 版本
rbenv global 3.0.0
验证安装
ruby -v
如果ruby的版本没有更改过来
export PATH="/Users/lxy/.rbenv/shims:$PATH"
二、使用 rbenv 卸载ruby
列出已安装的 Ruby 版本
rbenv versions
# rbenv versions
# 3.0.0 (set by /Users/lixiaoyi/.ruby-version)
# 可以直接修改文件中的默认版本号
卸载特定 Ruby 版本
rbenv uninstall 2.7.4
homebrew安装和卸载
查看brew安装三方库的默认路径
brew --prefix
修改brew的默认安装目录
export HOMEBREW_PREFIX=/your/new/installation/path
一、使用 HomeBrew 安转或更新本地的Ruby版本
请注意,如果你之前已经安装了 Ruby,并且希望更新到新版本,你可能需要卸载旧版本。你可以使用 `brew uninstall` 命令来卸载旧版本,然后按照上述步骤安装新版本。
1. 查看可用的 Ruby 版本:
brew search ruby
这将列出不同版本的 Ruby,包括当前可用的版本。选择你想要安装的 Ruby 版本。
如果报错是因为无法从github拉取最新的版本信息,提示配置github的:personal access token
Create a GitHub personal access token:
https://github.com/settings/tokens/new?scopes=gist,repo,workflow&description=Homebrew
创建完成之后一定要记录好;
记录生成的token
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
执行指令,将token写入.zshrc文件
# echo 'export HOMEBREW_GITHUB_API_TOKEN=your_token_here' >> ~/.zshrc
2. 安装所选版本:使用 `brew install` 命令来安装你选择的 Ruby 版本。例如,如果你想安装 Ruby 3.0,可以运行:
brew install ruby@3.0
这将下载并安装所选版本的 Ruby。
3. 设置新的 Ruby 版本:安装完成后,你可以使用 `brew link` 命令将新的 Ruby 版本链接到系统中:
brew link --force ruby@3.0
这将使新的 Ruby 版本成为系统默认版本。
4. 验证 Ruby 版本:最后,使用以下命令验证已安装的 Ruby 版本:
ruby -v
这会显示你新安装的 Ruby 版本的详细信息。
二、使用 Homebrew 删除 Ruby
检查是否通过 Homebrew 安装了 Ruby
brew list
查找与 Ruby 相关的非 Homebrew 文件,有需要或不确定的你可以备份这些文件,然后手动删除它们
brew list --formula | grep ruby
卸载 Ruby
brew uninstall ruby
gem list | grep rainbow
gem install rainbow
行者常至,为者常成!