1.什么是yalc
yalc(Yet Another Linker Cache)是一个用于管理本地软件包的工具。它允许开发者在项目中创建和使用本地软件包,而无需将其发布到公共软件包仓库。
yalc可以用于各种编程语言和框架。它的主要功能包括:
-
创建本地软件包:yalc允许开发者在项目中创建本地软件包,并为每个软件包生成一个唯一的标识符。
-
共享本地软件包:开发者可以使用yalc共享本地软件包,使其可供其他项目使用。这对于团队协作和模块化开发非常有用。
-
安装本地软件包:yalc允许开发者在项目中安装本地软件包,以便在开发过程中快速测试和应用更新。
-
依赖管理:yalc提供了依赖管理功能,开发者可以轻松地管理项目的依赖关系和版本控制。
-
快速重建:yalc会自动检测本地软件包的更改,并在需要时重新构建和应用更新,以确保开发过程的高效性。
总之,yalc是一个灵活、高效的本地软件包管理工具,可以帮助开发者更好地组织和协作开发项目,提高开发效率。
2.安装
npm i yalc -g
# or
yarn global add yalc
3.使用yalc
3.1 yalc publish (发布依赖)
//在软件包项目中执行:
yalc publish
当在包目录中运行 yalc publish
时,它仅抓取应发布到 NPM 的文件并将它们放入特殊的全局存储中(例如,位于 ~/.yalc
中)
在yalc publish后,它会逐一执行npm 生命周期脚本,如:prepublish、prepare、prepublishOnly、prepack...等。
同时,你也可以通过--no-script禁用钩子钩动各种脚本。
3.2. yalc add (添加依赖)
//在需要装依赖包的项目中执行
yalc add chiwen-fun
然后可以在项目中通过
import { CutIntoArrayValues } from 'chiwen-fun';
用到你本地chiwen-fun中的最新代码了!
如果想还原项目中原本的依赖,可以按下面操作,它本身并没有被删除,而且放到一个
chiwen-antd/node_modules中原本依赖的chiwen-fun文件也并没有丢,它们被放到了一个缓存文件中,你可以轻松还原,如下:
3.3. yalc remove (移除依赖)
在项目中执行:
yalc remove my-package
它将删除 package.json
和 yalc.lock
中的包信息
3.4. yalc push (更新和推送)
如果你修改了包里的一些代码,你只需要执行:
yalc publish --push
它将复制应在远程 NPM 注册表中发布的所有文件。
3.5. 更多的其他用法
yalc update my-package # 更新依赖
yalc remove --all # 移除当前包里的全部yalc依赖
yalc retreat [--all] #撤销
yalc restore #恢复
yalc的核心原理是将本地软件包链接到项目中,而不是将其发布到公共软件包仓库。这样可以在开发过程中快速修改和测试软件包,并将其应用到项目中,而无需每次修改后都重新发布软件包。yalc还支持多个项目之间共享本地软件包,方便团队协作。
使用yalc,开发者可以轻松地创建、共享和安装本地软件包。它支持各种主流编程语言和框架,并提供了命令行工具和API供开发者使用。通过yalc,开发者能够更加高效地管理项目的依赖关系,并加速软件开发和测试过程。
更多可参考 yalc github