2015-12-18 179 views
7

我以前使用npm install gulp -g安装了gulp。然后我克隆了一个现有的项目,这需要我使用自己的一口气。现在,当我从项目文件夹外部执行gulp -v时,我遇到了这样的不匹配。gulp本地和CLI版本不匹配

C:\Users\userme>  
[11:14:05] CLI version 3.8.11 
[11:14:05] Local version 1.0.0 

而当我从我的项目文件夹做了一大口,我得到了这个。

C:\project\new\tools> 
[11:14:26] CLI version 3.8.11 
[11:14:26] Local version 3.8.11 

现在,我一直没能合并使用正确一饮而尽(我得到的文件分一些奇怪的格式错误)我的JS文件,我怀疑它是否与此不匹配。

  1. 有没有办法消除全球一饮而尽版本,但保留项目的具体一饮而尽
  2. 或者我可以更新我的全球版gulp到@ 3.8.11

注 - 我尝试使用npm update [email protected] -g尝试更新全局吞咽,但没有发生任何事情。我仍然得到不匹配。

更新来描述问题: 我正在使用gulp将多个JS文件合并成一个单一的main.js文件。我在合并文件中获得的格式在其中存在语法错误。

在合并文件

预期输出 -

... 
define('utils/knockoutBindings/slider',['require','ko','jquery'],function(require) { 
    'use strict'; 
    var ko = require('ko'); 
    var $ = require('jquery'); 
... 

在合并文件实际输出(这1行的下面的代码被错误地替换上方的整个4行) -

... 
var'utils/knockoutBindings/slider',['require','ko','jquery'],function(require) { 
... 

可能看起来在gulp代码中存在一个问题,但其他用户使用相同的代码,并且在它们的最后运行良好。我们发现的唯一区别在于我的一些版本中的不匹配。

+0

也许把你得到实际的错误,它可能不是导致错误一饮而尽。 – TheLazyChap

+0

我希望我能。但我已经更新了这个问题来更详细地描述这个问题。 – Rodiwa

回答

9

我在回答我自己的问题,只是这样对别人有用。

  1. 有没有办法消除全球一饮而尽版本,但保留项目的具体一饮而尽?

号AFAIK,您需要安装特定吞掉全球以及一个到您的项目。

更多关于吞咽版本的信息在这里。

  • 或者,我可以更新我的全球版本一饮而尽,以@ 3.8.11?
  • 因为我正面临着我的本地版本不匹配,我不得不从项目文件夹本身更新。

    npm install [email protected] --save 
    

    更多相关信息,请点击这里。

    +0

    你实际上并不需要全球'gulp'。只需在全球安装'gulp-cli'。 –

    +0

    按照gulp文档:如果您以前在全球范围内安装了gulp版本,请运行npm rm --global gulp以确保您的旧版本不会与gulp-cli相冲突。 – Sourabh