[英]Does NPM ignore files listed in .gitignore?
我有一個由npm install
命令生成的文件(使用preinstall
任務)。 我不想將它添加到 git 存儲庫中,也不想添加到 NPM 項目中。
假設文件名是foo.json
,我將它添加到.gitignore
文件中作為foo.json
。
這足以避免將其上傳到 NPM 注冊表嗎?
我知道我可以添加.npmignore
文件,它肯定會忽略該文件,但如果.gitignore
已經這樣做了,我不會添加它。
如果項目同時具有.npmignore
和.gitignore
文件,npm 將只使用.npmignore
文件。
從文檔:
使用
.npmignore
文件將內容排除在包之外。 如果沒有.npmignore
文件,但有一個.gitignore
文件,然后將NPM忽略由相匹配的東西.gitignore
文件。 如果要包含.gitignore
文件排除的內容,可以創建一個空的.npmignore
文件來覆蓋它。
簡單來說,如果.npmignore
文件存在,npm更喜歡它,但會回退到.gitignore
文件。
在許多情況下,Git 和 npm 都可以忽略相同的文件,因此.gitignore
使用.gitignore
文件是有意義的。 如果存在差異(即 npm 和 Git 需要忽略不同的文件),那么您需要維護單獨的.gitignore
和.npmignore
文件。
有關將什么放入.npmignore
文件的更多信息: 我應該 .npmignore 我的測試嗎?
對於任何閱讀本文試圖忽略來自 git 的文件/目錄但希望將其包含在 npm publish 中並嘗試使用空的.npmignore
文件但沒有運氣的人。 這有效。
在您的.gitignore
文件中,添加您希望排除的文件/目錄**/build
例如,並在您的.npmignore
文件中確保您指定相同的文件/目錄,但使用!
前綴,因此對於構建示例,您將包括!**/build
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.