纱线 v2 gitignore

Ale*_*eev 26 git gitignore yarnpkg yarn-v2

我将 yarn 从 v1.22.0 升级到 v2.0.0-rc.29。它生成了.yarn文件夹:

  • 文件夹:cachereleasesunplugged
  • 文件:build-state.yml

我应该将整个 .yarn 文件夹添加到.gitignore吗?或者可能有一些嵌套文件夹,比如.yarn/cache

UPD:另外,如何处理.pnp.js。我是提交还是添加到.gitignore

Tho*_*mas 29

请参阅文档的问答部分它已经更改了几次,因此只需单击该链接即可获得最新的答案!

但在 StackOverflow 的“没有仅链接的答案”的精神中,这里有一个快照:

应该忽略哪些文件?

如果您使用的是零安装

.yarn/*
!.yarn/cache
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions
Run Code Online (Sandbox Code Playgroud)

如果您不使用零安装

.yarn/*
!.yarn/patches
!.yarn/releases
!.yarn/plugins
!.yarn/sdks
!.yarn/versions
.pnp.*
Run Code Online (Sandbox Code Playgroud)

请注意,在您提到的路径中,只.yarn/releases不应在.gitignore.

  • 专业提示:如果您激活了 [@yarnpkg/plugin-node-modules](https://github.com/yarnpkg/berry/tree/master/packages/plugin-node-modules),并且可以看到“node_modules”文件夹在您的项目中,即使您仍然可以看到“.yarn/cache”文件夹,您也没有使用零安装方法。 (4认同)
  • UPD:答案已过时。检查上面提到的问答部分。 (3认同)
  • 我如何知道我的项目是否是零安装?使用 [yarn 安装页面](https://yarnpkg.com/getting-started/install) 安装,但它没有告诉我它是否是零安装。 (3认同)
  • @AlexanderPanteleev 谢谢,已更新。这就是遵守 StackOverflow 的“仅提供链接答案”政策所得到的结果……:( (2认同)
  • @cmaster-reinstatemonica 不,那太简单了。例如,“yarn.lock”永远不会由用户直接修改,但仍然应该签入。显然,对于“.yarn”的“cache”(?!)、“releases”和“plugins”子目录,它们在上面明确未忽略,尽管可能从未经过手动编辑。一般来说,如果工具创建或更改用户不直接关心的文件,则需要这样的文档来决定应签入哪些文件以及应忽略哪些文件。 (2认同)
  • 如果您不得不问,那么您_没有_使用零安装。 (2认同)