🔥🔥🔥version-manager 最好用的 SDK 版本管理器,v0.6.2 发布

来源: 投稿
作者: osc_29565037
2024-06-13 10:22:00

项目地址:https://github.com/gvcgo/version-manager

中文文档:https://gvcgo.github.io/vdocs/#/zh-cn/introduction

功能特点

  • 跨平台,支持WindowsLinuxMacOS
  • 支持多种语言和工具,省心
  • 受到lazygit的启发,拥有更友好的TUI,更符合直觉,且无需记忆任何命令
  • 支持针对项目锁定SDK版本,使用cd命令切换到项目目录时,自动切换到锁定的SDK版本
  • 支持反向代理/本地代理设置,提高国内用户下载体验
  • 相比于其他SDK管理器,拥有更优秀的架构设计响应更快稳定性更高
  • 无需麻烦的插件,开箱即用
  • 无需docker,纯本地安装,效率更高
  • 更高的可扩展性,甚至可以通过使用conda来支持数以千计的应用

竞品对比

  1. fnm, nvm, gvm, pyenv, phpenv等,只支持单一语言,界面简陋,命令复杂。
  2. asdf-vm, mise, sdkman等,虽然支持多种语言,但要么对windows支持不够好,要么支持的语言有限,而且命令和概念复杂。
  3. vfox, 模仿asdf-vm,采用go+lua插件的模式。虽然解决了asdf-vm跨平台方面的缺陷,但是并不能提高效率,反而带来了开发上的麻烦,原因在于lua本身功能非常有限,所有的网页和接口数据的解析,下载安装等主要功能都需要在go主程序实现,然后与lua脚本交互。凡是复杂一点的网页,都不得不同时修改或调整go主程序和lua脚本,这影响了其支持的广度,甚至不得不使用竞品的版本仓库数据,例如,vfox的vlang, bun, kubectl, julia, protobuf等插件数据源头均来自VMR。而且,vfox用户需要自行寻找和安装插件,各种命令相对纷杂,需要用户付出一定的学习成本。所以,vfox这种模式并没有解决实质问题。
  4. VMR,摒弃了复杂的插件系统,剥离爬虫部分(所有SDK版本管理相关的工具,本质都是爬虫,加上解压安装、环境变变量管理),引入交互式TUI(Terminal UI),充分利用Conda forge相关资源。大大降低了学习成本,提高了响应速度和下载效率,稳定性更高,同时保持了优秀的扩展性。目前支持60多款编程语言和工具,广泛程度远非vfox等能达到。可以说VMR在设计的考虑上面,远超目前存在的所有SDK版本管理器。

动图演示:

展开阅读全文
点击引领话题📣 发布并加入讨论🔥
0 评论
8 收藏
分享
返回顶部
顶部