在节点中如何pipe理npm包?
我不明白在nodeter中如何pipe理节点包。 当我从CLI运行nodester npm install <package-name>
,在我的应用程序的源文件夹中看不到任何软件包。 如果没有这些包在我的文件夹中可见,我可以以通常的方式使用它们(就像我已经将它们直接安装在我的应用程序文件夹中一样)。
我build议不要直接在文件夹中存储包,因为Nodester免费提供Node PaaS,如果不优化我的应用程序并使其占用最小的空间将是不友善的。
其次是有一种方式,我可以在本地和节点上运行应用程序。 我怎么能告诉git不要推动本地安装的git模块。 我听说过像git ignore
。 我如何pipe理git忽略,以便我的本地包不被推入节点上?
我可能没有雄辩的构思这个问题,因为我是一个节点的新手,所以任何人都可以用更好的方式提出我的问题,随时编辑这个 。
通常,最好的方法是将node_modules目录添加到.gitignore文件中。 我的.gitignore对于我的节点项目来说是这样的:
*.sw* .DS_Store node_modules
第一行忽略任何Vim临时文件,第二行忽略OSX .DS_Store文件,最后一行忽略我的node_modules目录。 如果已经提交,你需要首先使用git rm
从你的仓库中删除你的node_modules目录。
更多的探索重新。 gitignore文件在这里从GitHub。
所以这将使Git忽略你的node_modules,太棒了。 其次,你将需要创build一个package.json文件。 这告诉npm(和Nodester)你的应用程序依赖于什么。
{ "author": "Mr Awesome", // This is your name :) "name": "my_awesome_app", // This is your apps name "description": "More awesome than most other apps.", // What your app does "version" : "0.0.1", // Your apps version (increment this when you deploy) "node": "0.6.12", // The version of node you want Nodester to run your app on "dependencies": { "connect" : "2.0.3", // depend on version 2.0.3 of connect "express" : "*" // depend on the latest version of express } }
有关package.json格式的更多信息可以在这里find:
当你推送节点时,应该读取package.json并安装你的依赖关系。
希望有所帮助!