logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Configuration

       <!-- AUTOGENERATED CONFIG DESCRIPTIONS -->

Description

       This command is similar to npminstall, except
       it's meant to be used in automated environments such as test platforms,
       continuous integration, and deployment -- or any situation where you want
       to make sure you're doing a clean install of your dependencies.

       The main differences between using npminstall and npmci are:

        • The project must have an existing package-lock.json or
          npm-shrinkwrap.json.

        • If dependencies in the package lock do not match those in package.json,
          npmci will exit with an error, instead of updating the package lock.

        • npmci can only install entire projects at a time: individual
          dependencies cannot be added with this command.

        • If a node_modules is already present, it will be automatically removed
          before npmci begins its install.

        • It will never write to package.json or any of the package-locks:
          installs are essentially frozen.

       NOTE: If you create your package-lock.json file by running npminstall
       with flags that can affect the shape of your dependency tree, such as
       --legacy-peer-deps or --install-links, you must provide the same
       flags to npmci or you are likely to encounter errors. An easy way to do
       this is to run, for example,
       npmconfigsetlegacy-peer-deps=true--location=project and commit the
       .npmrc file to your repo.

Example

       Make sure you have a package-lock and an up-to-date install:
         $ cd ./my/npm/project
         $ npm install
         added 154 packages in 10s
         $ ls | grep package-lock

       Run npmci in that project
         $ npm ci
         added 154 packages in 5s

       Configure Travis CI to build using npmci instead of npminstall:
         # .travis.yml
         install:
         - npm ci
         # keep the npm cache around to speed up installs
         cache:
           directories:
           - "$HOME/.npm"

Name

npm-ci

See Also

        • npm install

        • package-lock.json

9.2.0                                               May 2024                                           NPM-CI(1)

Synopsis

       <!-- AUTOGENERATED USAGE DESCRIPTIONS -->

See Also