pnpm install 之后 lock 文件全变,一场虚惊

5481
alan楼主·发布于 28 天前·约 1 分钟读完·踩坑
  • alan

    改完代码让 Agent 提交,diff 里 package-lock.json 有 8000 行变动。以为它乱动了,查了半天。

    原因:项目里既有 package-lock.json 又有 pnpm-lock.yaml。Agent 在根目录跑了 npm install,npm 按 package.json 重新生成了 lock 文件。

    两个教训:

    1. CLAUDE.md 里明确写用哪个包管理器。不写它会挑最熟悉的那个,通常是 npm。
    2. hook 里禁止改动 lock 文件,除非显式要求。

    顺带清理了仓库:删掉 package-lock.json,.gitignore 加规则,package.json 里加 packageManager 字段锁定版本。

    现在 lock 文件再没被误改过。这类问题的共性是:仓库里有多个等价方案时,Agent 会自己选一个,而它的选择标准是训练数据里的常见程度,不是你的项目约定。

    主楼
  • xiaoman

    同样的坑,我这边是配置文件权限不对,排查了半天。

    #1

发表回复

登录后回复