npm的两个配置文件npmrc和nvmrc:
npmrc相关:
npmrc,可以理解成npm running cnfiguration, 即npm运行时配置文件。我们知道,npm最大的作用就是帮助开发者安装需要的依赖包,但是要从哪里下载?下载哪一个版本的包,把包下载到电脑的哪个路径下?
这些都可以在.npmrc中进行配置。
在设置.npmrc之前,我们需要知道:在你的电脑上,不止存在一个.npmrc文件,而是有多个。在我们安装包的时候,npm按照如下顺序读取这些配置文件:
项目配置文件:你可以在项目的根目录下创建一个.npmrc文件,只用于管理这个项目的npm安装。
用户配置文件:在你使用一个账号登陆的电脑的时候,可以为当前用户创建一个.npmrc文件,之后用该用户登录电脑,就可以使用该配置文件。可以通过 npm config get userconfig 来获取该文件的位置。
全局配置文件: 一台电脑可能有多个用户,在这些用户之上,你可以设置一个公共的.npmrc文件,供所有用户使用。该文件的路径为:$PREFIX/etc/npmrc,使用 npm config get prefix 获取$PREFIX。如果你不曾配置过全局文件,该文件不存在。
npm内嵌配置文件:最后还有npm内置配置文件,基本上用不到,不用过度关注。
用户配置文件:
qinhong@HPDEV-31:~$ npm config get userconfig
/home/qinhong/.npmrc
打开这个配置文件发现是我之前配置的仓库地址:
registry=https://registry.npm.taobao.org
还可以在项目下配置:
#包路劲地址
@qinhong-ui:registry='https://gitlab.qinhong.com:8081/api/v4/projects/800/packages/npm/'
#授权地址信息
'//gitlab.qinhong.com:8081/api/v4/projects/800/packages/npm/:_authToken'=ddfr78dsfdggVCd
You should now be able to run npm install @qinhong-ui/design-system to install the package.
IMPORTANT: DO NOT COMMIT THIS AUTH TOKEN TO THE REPOSITORY.
1. To make the install work in CI, in your Gitlab repository for the project go to Settings => CI/CD => Expand the variables section => add variable.
2. Add a variable of GITLAB_TOKEN with your secret project token.
3. In your gitlab-ci.yml file you can now create a variable that reads this token in CI and will be used during the npm install.
variables:
GITLAB_TOKEN: $GITLAB_TOKEN
nvmrc相关:
Node.js 版本更新速度极快,但未必所有套件都能对应于新的版本,可以通过 nvmrc文件定义当前项目的Node.js版本
cd project-a
touch .nvmrc
echo "12" >> .nvmrc
cd ..
cd project-b
touch .nvmrc
echo "16" >> .nvmrc
像我本地的 .nvmrc 文件内容是: lts/hydrogen #这是一个v18的长期维护本版,https://nodejs.org/en/blog/release/v18.12.0
