Yarn有一个方便的版本控制配置,可以在版本控制时配置git,当创建标签时使用:
yarn config set version-tag-prefix "v"
yarn config set version-git-message "v%s"
然而,我的项目中包含多个npm项目,我想用
project-vn.n.n
对每个项目进行版本控制,但上述方法似乎是全局设置。是否有一种方法可以在每个package.json中配置前缀和消息(无需手动指定)?所以,我刚刚遇到了同样的问题,并找到了解决办法。
简短回答是你可以在每个项目目录下创建一个文件.yarnrc
,并添加以下内容:
# example of myrepo/workspace1/.yarnrc
version-tag-prefix workspace-1-v
version-git-message "workspace-1 v%s"
这样做的好处是,当从工作区目录运行yarn publish
,或者从仓库根目录运行yarn workspaces run publish
时,yarn使用workspace1/.yarnrc
配置。
查看yarn寻找配置文件的方式是运行yarn <command> --verbose
。