npm publish 的時(shí)候會(huì)把項(xiàng)目目錄里面所有的文件都publish到npm倉(cāng)庫(kù)中, 但是往往有一部分目錄和文件不想發(fā)布上去,比如項(xiàng)目的源碼钻哩、編譯腳本等等信息相速。
如何發(fā)布用戶需要使用的相關(guān)文件呢碟渺?
方法一:使用 .gitignore 設(shè)置忽略哪些文件
.gitignore 設(shè)置的忽略文件,在git代碼管理和 npm publish 都會(huì)被忽略
方法二:使用 .npmignore 設(shè)置忽略哪些文件
.npmignore 的寫(xiě)法跟?.gitignore 的規(guī)則完全一樣突诬。若同時(shí)使用了?.npmignore 和?.gitignore止状,只有?.npmignore 會(huì)生效,優(yōu)先級(jí)比較高攒霹。
方法三:使用 package.json 的 files 字段選擇發(fā)布哪些文件
直接在?package.json 中 files 字段設(shè)置發(fā)布哪些文件或目錄怯疤。這個(gè)優(yōu)先級(jí)高于?.npmignore 和 .gitignore。
PS:選擇哪種方法催束,根據(jù)自己的需求而定集峦。一般情況,使用方法三。
另:npm publish 默認(rèn)的忽略規(guī)則
默認(rèn)被忽略:
.*.swp
._*
.DS_Store
.git
.hg
.npmrc
.lock-wscript
.svn
.wafpickle-*
config.gypi
CVS
npm-debug.log
node_modules/
默認(rèn)被包含塔淤,即便設(shè)置忽略也無(wú)效
package.json
README (and its variants)
CHANGELOG (and its variants)
LICENSE / LICENCE
言子玉 · 出品? @ 2019-03-26
仰望星空摘昌,讓淚水倒流