Pular para o conteúdo principal
Versão: Next

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 pnpm-workspace.yaml file.

gitBranchLockfile: 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 pnpm-workspace.yaml file, pnpm install will merge all git branch lockfiles when running in the main branch and the branch name starts with release.

mergeGitBranchLockfilesBranchPattern:
- main
- release*