我应该提交在 npm 包中发布的自动生成的文件吗

Posted

技术标签:

【中文标题】我应该提交在 npm 包中发布的自动生成的文件吗【英文标题】:Should I commit auto generated files published in npm package 【发布时间】:2018-03-19 20:42:22 【问题描述】:

我有一个用 TypeScript 编写的 NPM 包。我的构建过程获取所有 *.ts 文件并将它们捆绑到 myLib.d.ts、myLib.js 和 myLib.js.map 中。

我的 NPM 包必须有所有的 src/.ts 文件和这三个 myLib。 自动生成的文件。

但是在我的 git 存储库中,我应该提交这三个 myLib.* 自动生成的文件吗?

在npm包中发布不受版本控制的文件有问题吗?

【问题讨论】:

【参考方案1】:

输出/生成的文件 myLib.d.tsmyLib.jsmyLib.js.map 不应在 git repo 中管理。

您应该通过.gitignore 忽略这些文件。并且不会影响发布 npm 包。

您也可以参考 TypeScript 的示例 .gitignore 文件。

【讨论】:

以上是关于我应该提交在 npm 包中发布的自动生成的文件吗的主要内容,如果未能解决你的问题,请参考以下文章

npm notice 创建了一个锁文件作为 package-lock.json。你应该提交这个文件

如何引用由 NPM 包中 tsc 的“声明”选项生成的 TypeScript .d.ts 文件中声明的类型?

如何在外部 npm 包中使用 React 的 Link 组件而不会出现错误:不变的“你不应该在路由器外部使用链接”

如何在 npm 包中添加文件夹作为条目?

是否应该将 package-lock.json 提交到 npm 包的存储库?

Vue 监听 Vuex 提交?