指尖上的记忆指尖上的记忆
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub

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