Roa*_*ers 4 gitignore npm npmignore
我有一个要发布到 npm 的打字稿项目。我所有的 TS 源都在一个名为的文件夹中src,它们被编译到一个名为dist.src可能包含一些 html 模板,可能包含 css 文件和其他资产。作为构建的一部分,这些资产都被复制到 dist 文件夹中。
在 dist 文件夹中也生成了 source map 文件
发布时,我只想发布 dist 文件夹,但我希望 dist 文件夹中的源映射正常工作。
当我发布到 npm 时,我想包含整个dist文件夹但忽略文件夹中的所有非 ts 文件src。
我需要的原因 .ts文件是 dist 文件夹中的源映射指向这些源文件。调试时,我需要原始源代码才能在浏览器中看到它。
所以,我需要忽略srcEXCEPT 中的.ts文件src
根据我的研究,我已经尝试了以下方法,据我所知,这些方法应该有效。
# standard ignores
node_modules/
karma.conf.js
spec/
# ignore src
src/
# override above and include ts files
!src/**/*.ts
!src/**/*.d.ts
Run Code Online (Sandbox Code Playgroud)
当我使用这个文件打包时,我得到了包中的整个 src 文件夹,包括 html、css 和图像文件。
我不确定以上是否适用于直接在src文件夹下的 ts 文件,所以我也尝试过
!src/actualFile.ts
Run Code Online (Sandbox Code Playgroud)
但结果是一样的。
解决方案:
将通配符添加**/*到您的忽略src模式,使其变为:
# ignore src
src/**/*
Run Code Online (Sandbox Code Playgroud)
补充评论:
您的最后一个否定模式(即!src/**/*.d.ts)可以省略。它之前的否定模式(即!src/**/*.ts)有效地使它变得多余。
!src/**/*.ts单独使用将确保目录中的任何*.d.ts文件src也包括在内。
完成修订 .npmignore
为清楚起见,完整的修订版.npmignore(鉴于您提供的示例)应为:
# standard ignores
node_modules/
karma.conf.js
spec/
# ignore src
src/**/*
# override above and include ts files
!src/**/*.ts
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4248 次 |
| 最近记录: |