一个简单且通用的版本管理工具。 可以注册目标工具版本到 xvm 数据库, 也可搭配 xim 包管理器(自动安装注册)进行使用
利用工作空间机制, 支持自动版本切换(以 node 为例)
speak@speak-pc:~/test/xvm$ node --version
v22.12.0
speak@speak-pc:~/test/xvm$ xvm list node # 查看所有版本
23.6.0
22.12.0
speak@speak-pc:~/test/xvm$ xvm use node 23.6.0 # 切换到 23.6.0
using -> target: node, version: 23.6.0
speak@speak-pc:~/test/xvm$ node --version # 验证版本
v23.6.0
speak@speak-pc:~/test/xvm$ xvm current node # 显示版本信息(xvm 下有个 test 工作空间配置)
[[test + global]]
node: 23.6.0
nodejs: 23.6.0 --> [node]
all targets added
speak@speak-pc:~/test/xvm$ cd .. # 返回上级目录(自动切换到全局空间)
speak@speak-pc:~/test$ node --version # node 版本已经变成了 22
v22.12.0
speak@speak-pc:~/test$ xvm current node # 查看当前版本情况
[[global]]
node: 22.12.0
nodejs: 23.6.0 --> [node]
all targets added
speak@speak-pc:~/test$ cd xvm # 再次进入 xvm 目录(node 会自动变成 test 工作空间的版本
speak@speak-pc:~/test/xvm$ node --version
v23.6.0
speak@speak-pc:~/test/xvm$
1-全局模式
2-local 模式
3-自定义工作空间 - (计划开发中)
1
Sunrisepeak OP 目前还是初步的版本。欢迎大家尝试, 或给出一些开发/改进方向上的建议...
|
2
ITisCool 14 小时 38 分钟前
就先照 asdf 包含完它的所有功能好了。不过 asdf 最近也用 golang 重写了,用 rust 写一个性能应该也不会占太大优势。
|