我想发布一个包含我的源代码和分发文件的npm包。我的Github存储库包含src
文件夹,其中包含JavaScript源文件。构建过程生成包含分发文件的dist
文件夹。当然,dist
文件夹未检入Github存储库。
如何以某人npm install
的方式发布npm包,他们获得src
以及dist
文件夹?目前,当我从我的git存储库运行npm publish
时,它只会导致src
文件夹被发布。
我的package.json看起来像这样:
{
"name": "join-js",
"version": "0.0.1",
"homepage": "https://github.com/archfirst/joinjs",
"repository": {
"type": "git",
"url": "https://github.com/archfirst/joinjs.git"
},
"main": "dist/index.js",
"scripts": {
"test": "gulp",
"build": "gulp build",
"prepublish": "npm run build"
},
"dependencies": {
...
},
"devDependencies": {
...
}
}
看一下package.json文件https://docs.npmjs.com/files/package.json#files的“files”字段
从文档:
“files”字段是要包含在项目中的文件数组。如果您在数组中命名文件夹,那么它还将包含该文件夹中的文件。 (除非他们会被另一条规则忽略。)
当你npm publish
,如果你没有.npmignore
文件,npm将使用你的.gitignore
文件(在你的情况下你排除了dist
文件夹)。
要解决您的问题,请根据您的.npmignore
文件创建一个.gitignore
文件,而不要忽略dist文件夹。
Soure:https://docs.npmjs.com/misc/developers#keeping-files-out-of-your-package