Skip to content

快速入门

这里以Nodejs为例,介绍如何使用vfox

1. 安装vfox

Windows

Scoop
shell
scoop install vfox
winget
shell
winget install vfox
Setup安装器

前往 Releases 页面下载最新版本的setup安装器,然后按照安装向导进行安装。

手动安装
  1. Releases下载最新版本的zip安装包
  2. 配置PATH环境变量,将vfox安装目录添加到PATH环境变量中。

Unix-like

Homebrew
shell
$ brew install vfox
APT
shell
 echo "deb [trusted=yes] https://apt.fury.io/versionfox/ /" | sudo tee /etc/apt/sources.list.d/versionfox.list
 sudo apt-get update
 sudo apt-get install vfox
YUM
shell
echo '[vfox]
name=VersionFox Repo
baseurl=https://yum.fury.io/versionfox/
enabled=1
gpgcheck=0' | sudo tee /etc/yum.repos.d/versionfox.repo

sudo yum install vfox
手动安装
shell
$ curl -sSL https://raw.githubusercontent.com/version-fox/vfox/main/install.sh | bash

2. 挂载vfox到你的Shell

注意!!!!!

请从下面选择一条适合你Shell的命令执行!

Bash
shell
echo 'eval "$(vfox activate bash)"' >> ~/.bashrc
ZSH
shell
echo 'eval "$(vfox activate zsh)"' >> ~/.zshrc
Fish
shell
echo 'vfox activate fish | source' >> ~/.config/fish/config.fish
Powershell

打开 PowerShell 配置文件:

shell
New-Item -Type File -Path $PROFILE # 无需在意 `文件已存在` 错误

# 如果它提示未能找到路径,那么你需要强制创建profile。添加"-Force"选项。
# New-Item -Type File -Path $PROFILE –Force

Invoke-Item $PROFILE # 打开profile

将下面一行添加到你的 $PROFILE 文件末尾并保存:

shell
Invoke-Expression "$(vfox activate pwsh)"

如果powershell提示:在此系统上禁止运行脚本,那么请你以管理员身份重新运行powershell输入如下命令

shell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
# 之后输入Y,按回车
y
Clink & Cmder
  1. 找到脚本存放路径:
    shell
    clink info | findstr scripts
  2. 复制 clink_vfox.lua 到脚本目录下
  3. 重启 Clink 或 Cmder

3. 添加插件

命令: vfox add <plugin-name>

安装了vfox后,你还做不了任何事情,您需要先安装相应的插件

注意

你可以使用 vfox available 命令查看所有可用插件。

bash
$ vfox add nodejs

4. 安装运行时

在插件成功安装之后, 你就可以安装对应版本的Nodejs了。

命令: vfox install nodejs@<version>

我们将只安装最新可用的 latest 版本:

$ vfox install nodejs@latest

版本问题

vfox 强制使用准确的版本。latest 是一个通过交给插件来解析到执行时刻的实际版本号的行为, 是否支持取决于插件的实现。

如果你不知道具体版本号, 可通过 vfox search nodejs 来查看所有可用版本。

自动安装

installsearch命令会检测本地是否已经安装了插件,如果没有,它们会自动安装插件

当然,我们也可以安装指定版本:

bash
$ vfox install nodejs@21.5.0

5. 切换运行时

命令: vfox use [-p -g -s] nodejs[@<version>]

vfox 支持三种作用域, 每个作用域生效的范围不同:

Global

全局唯一

使用以下命令可以设置一个全局版本:

shell
$ vfox use -g nodejs

TIP

默认配置在$HOME/.version-fox/.tool-versions文件中进行管理。

$HOME/.version-fox/.tool-versions 文件内容将会如下所示:

text
nodejs 21.5.0

执行之后不生效?

请检查$PATH中, 是否存在之前通过其他方式安装的运行时!

对于Windows用户:

1.请确保系统环境变量Path中不存在之前通过其他方式安装的运行时!

2.vfox 会自动将安装的运行时添加到用户环境变量 Path中。

3.如果你的Path中存在之前通过其他方式安装的运行时, 请手动删除!

Project

不同项目不同版本

shell
$ vfox use -p nodejs

当你进入到一个目录时,vfox自动检测该目录下是否存在 .tool-versions 文件,如果存在,vfox自动切换到该项目指定的版本

TIP

配置放置在 $PWD/.tool-versions 文件中(当前工作目录)。

默认作用域

如果你不指定作用域,vfox 将会使用默认作用域。不同系统, 作用域不同:

对于Windows: 默认作用域为Global

对于Unix-like: 默认作用域为Session

Session

不同Shell不同版本

shell
$ vfox use -s nodejs

当前作用域的作用主要是满足临时需求,当你关闭当前终端时,vfox自动切换回全局版本/项目版本

TIP

默认配置在$HOME/.version-fox/tmp/<shell-pid>/.tool-versions 文件中(临时目录)。

效果演示

TIP

文字表达远不如图片来的更直观, 我们直接上效果图!

nodejs

完成指南!

恭喜你完成了 vfox 的快速上手 🎉 你现在可以管理你的项目的 nodejs 版本了。对于项目中的其他工具类型可以执行类似步骤即可!

vfox 还有更多命令需要熟悉,你可以通过运行 vfox --help 或者 vfox 来查看它们。

基于 Apache 2.0 许可发布