当前位置: 首页 > news >正文

bun 版本管理工具 bum 安装与使用

在使用 node 的过程中,我们可能会因为版本更新或者不同项目的要求而频繁切换 node 版本,或者是希望使用更简单的方式安装不同版本的 node,这个时候我们一般会用到 nvm 或者类似的工具。

在我尝试使用 bun 的时候,安装前第一个想到的问题就是:如果 bun 持续更新后,我想要使用最新版本,该怎么切换?

带着这个问题我简单搜索了一下,中文互联网没有搜索出什么有用的,仅查找到一个用于 asdf 的插件来通过 asdf 管理不同版本的 bun,仓库地址:https://github.com/cometkim/asdf-bun。

但是因为需要同时管理 asdf 和插件,我觉得不够一步到位,所以转到英文关键字的搜索,发现了一些东西。

首先是在 bun 仓库的 issue 中发现了官方对版本管理工具的看法:

有用户早在 23 年就提出是否可以在 bun 中内置一个版本管理工具,以避免使用 node 时需要额外安装 nvm 的问题,官方的态度也是很明显,将 issue 标记为了 Not Planned

但是继续查找后发现一个比较好的开源项目 bum(命名显然收到了 nvm 的影响,并且从他的命令行设计也看的出来),虽然 star 不多,地址如下:https://github.com/owenizedd/bum。

需要注意的是这个项目的作者使用的是 mac,所以按道理在 mac 和 linux 上问题都不大,windows 就自己试试能不能用了。


接下来介绍的是 bum 的安装和使用。

安装

很简单,官方提供了一个脚本:curl -fsSL https://github.com/owenizedd/bum/raw/main/install.sh | bash

该脚本会默认安装 bum 和最新版的 bun,安装完记得刷新环境变量或者重启终端。

但是在安装完成以后我发现我使用的这个版本没有自动将安装的 bun 添加到 bum 的管理中,这个问题不大,下面说。

在这里插入图片描述

使用

为什么说他收到 nvm 的影响?因为他的命令行基础命令和 nvm 的一样,可以无缝切换过来:

  • bum use 会切换到目标版本,如果 bum 发现自己管理中的没有,则会自动下载。上面说到通过脚本安装可能会出现没有自动添加 bun 到 bum 中的问题,那么先 bun --verison 然后 bum use {version} 就好了。
  • bum list 将列出本地已经安装且纳入 bum 管理的可用版本。
  • bum list-remote 将列出可以下载和纳入管理的版本,bum use {其中的版本号} 将安装对应版本并自动纳入管理。
  • bum remove 移除,不用多说了,一般也不会用到。

示例:
请添加图片描述


写这个的一个主要原因是中文互联网居然连这个都很难检索到有用内容,做一个补充。

http://www.dtcms.com/a/111790.html

相关文章:

  • oracle账户被锁定了应该怎么办
  • Oracle数据库数据编程SQL<7.2 推荐管理工具:DBeaver Community安装教程>
  • 2021 CCF CSP-S2.括号序列
  • 软件工程(应试版)图形工具总结(二)
  • (二)RestAPI 毛子(Tags)
  • 第15届蓝桥杯省赛python组A,B,C集合
  • stable diffusion部署ubuntu
  • 识别干扰验证码——Python || Tesseract-OCR
  • 【深度学习】CNN简述
  • Talend API Tester
  • 请求被中止: 未能创建 SSL/TLS 安全通道。
  • Nature Communications|马兰戈尼效应构建空心金字塔微阵列制备高灵敏度柔性电容式压力传感器(健康监测/柔性压力传感/柔性电子/人机交互)
  • Spring 核心技术解析【纯干货版】- XXII:Spring 扫描效率提升模块 Spring-Context-Indexer 模块精讲
  • Lock接口方法介绍
  • JavaScript 中那些不常见的 for 循环命名与高阶用法
  • ModuleNotFoundError: No module named ‘matplotlib_inline‘
  • C++进阶知识复习 31~38
  • SSL证书自动化管理(ACME协议)工作流程介绍
  • 小动物多导生理记录仪产品需求定义
  • 12.青龙面板自动化我的生活
  • 01背包问题:详细解释为什么重量维度必须从大到小遍历。
  • SignalR给特定User发送消息
  • Spring event 和 MQ的区别及应用场景
  • 《Linux内存管理:实验驱动的深度探索》【附录】【实验环境搭建 4】【Qemu 如何模拟numa架构】
  • Nginx-日志配置
  • 【家政平台开发(14)】家政平台PC前端(Element plus)开发指南:从集成到组件应用
  • 【备考高项】附录:商标法(2013年修正 73条全)
  • QEMU源码全解析 —— 块设备虚拟化(14)
  • 深度学习处理文本(10)
  • 解决GraalVM Native Maven Plugin错误:JAVA_HOME未指向GraalVM Distribution