2013-06-19 38 views
6

我从github中克隆了一些npm包,并将包放入本地文件夹,例如:如何从本地文件夹更新npm包

c:\git\package 

我用“npm install -g”安装包,效果很好。

npm install -g c:\git\package 

但是,当我对包的代码进行了一些更改时,例如,检出了一些分支。我无法使用“npm update”来更新已安装的软件包。我曾尝试:

npm update -g 

npm update -g packagename 

npm update -g folderpath 

但是都没有成功。我必须使用“npm install”重新安装它才能进行更新,这会浪费时间来重新安装所有依赖项。

为什么npm只支持从文件夹安装,而不是从文件夹更新?如果它支持,我该怎么办?谢谢。

+1

如果我没有弄错,这是'npm link'的意思。 – chesles

回答

8

而不是从本地目录npm install,尝试npm link,它创建一个全局安装到目录的符号链接。

如前所述in the docs,这是一个过程分为两个步骤:

  1. 在包目录:

    $ npm link 
    

    这在故宫的全球安装目录下符号链接到当前文件夹。

  2. 别的地方,在这里你要使用的模块:

    $ npm link <pkgname> 
    

    这将在项目中创建的文件夹node_modules/一个符号链接到全球安装。

+0

不错,它像一个魅力工作!还有一个问题,如果我只需要全局使用这个包,我只需要在包目录中运行“npm link”,对吧? – bigbearzhu

+0

@bigbearzhu yep that should work – chesles

+0

我们该如何实现自动化?当一个新的同事检查出他直接运行的存储库到一个异常,因为链接还没有创建..对不对?对我们来说是不可接受的解决方案然后^^嗯,我尝试一个预安装脚本... – jebbie

相关问题