【发布时间】:2023-12-03 11:33:01
【问题描述】:
我们的 CI 中有一个奇怪的依赖项,它要求我们的 git 存储库有一个 node_modules 目录(但显然不是其中的包)。
由于 git 不跟踪空目录,我们实现它的方法是在里面有一个.gitignore:
node_modules/
.gitignore
使用以下配置
*
!.gitignore
这可行,直到我们使用 yarn install 重新安装我们的模块,这将清除目录中的所有内容,包括我们的 .gitignore 文件,从而弄乱存储库。
我们还可以添加如下内容:
node_modules/
.empty
.gitignore
.gitignore:
/node_modules/*
!/node_modules/.empty
但yarn install 仍会删除该文件,以及对node_modules 目录的任何跟踪。
我们的问题是,我们缺少什么可以:
- 允许我们在 git 中跟踪
node_modules/ - 无论何时我们
yarn install都不会中断
我知道实际的答案是修复我们的 CI,但这有点超出我们目前的范围。
【问题讨论】: