Pular para o conteúdo principal
Versão: 9.x

Git Branch Lockfiles

Arquivos de bloqueio de branch do Git permitem que você evite totalmente conflitos de arquivos de travamento e resolva-os mais tarde.

Use git branch lockfiles

You can turn on this feature by configuring the .npmrc file.

git-branch-lockfile=true

By doing this, lockfile name will be generated based on the current branch name.

For instance, the current branch name is feature-1. Then, the generated lockfile name will be pnpm-lock.feature-1.yaml. You can commit it to the Git, and merge all git branch lockfiles later.

- <project_folder>
|- pnpm-lock.yaml
|- pnpm-lock.feature-1.yaml
|- pnpm-lock.<branch_name>.yaml
nota

feature/1 is special in that the / is automatically converted to !, so the corresponding lockfile name would be pnpm-lock.feature!1.yaml.

Merge git branch lockfiles

pnpm install --merge-git-branch-lockfiles

To merge all git branch lockfiles, just specify --merge-git-branch-lockfiles to pnpm install command.

After that, all git branch lockfiles will be merged into one pnpm-lock.yaml

Branch Matching

pnpm allows you to specify --merge-git-branch-lockfiles by matching the current branch name.

For instance, by the following setting in .npmrc file, pnpm install will merge all git branch lockfiles when running in the main branch and the branch name starts with release.

merge-git-branch-lockfiles-branch-pattern[]=main
merge-git-branch-lockfiles-branch-pattern[]=release*