如何检查`node_modules /`下的`bin /`目录到TFS中?

时间:2017-02-16 18:12:46

标签: node.js visual-studio tfs npm tfsbuild

我在防火墙后面有一个Team Foundation Build服务器,我想检查一个与项目关联的node_modules/目录(同时支持Browserify客户端应用程序和节点服务器应用程序),以便所有文件部署构建所需的依赖关系可以在不获取任何内容的情况下使用。

检查node_modules/进入TFS似乎最初工作,除了我的NPM依赖项中出现的大约20个bin/目录没有签入。bin/没有出现在我的.tfignore(或我知道的其他任何地方可能阻止登记)。

这些bin/目录根本不会出现在团队资源管理器中包含/排除的更改中。可以在Windows资源管理器中找到其中一个文件夹并使用TFS上下文菜单添加它,但是对所有依赖项执行此操作将非常繁琐且容易出错。

如何说服TFS检测这些文件夹中的更改?是否有一些其他配置会影响我不知道的包含/排除的更改?

3 个答案:

答案 0 :(得分:2)

不建议上传" bin"文件夹或" node_modules"文件夹到版本控制。但如果您确实想这样做,请按照以下步骤操作:

  1. 转到"C:\Users\youraccount\AppData\Local\Microsoft\Team Foundation\x.0\Configuration\VersionControl"文件夹并打开" LocalItemExclusions.config"文件。 (可能有几个名为1.0,2.0,3.0的文件夹,您需要确保打开VS当前使用的文件夹。)

  2. 删除如下所示的行并保存文件:

  3.   <Exclusion>bin</Exclusion>
      <Exclusion>*.dll</Exclusion>
    
    1. 关闭Visual Studio。
    2. 删除&#34; node_modules&#34;文件夹中。
    3. 重新启动Visual Studio。
    4. 运行&#34; npm install&#34;命令重新安装节点模块。
    5. 检查&#34;待更改&#34;,&#34; bin&#34;中的文件文件夹应列在&#34;排除的更改&#34;部分。

答案 1 :(得分:0)

检查TFS是否会忽略文件和bin文件夹。您可以尝试手动添加它们(例如拖动到源控件资源管理器)。如果您不能,那么必须与某些.tfignore设置相关,您可以仔细检查这一点,例如项目文件夹级别的根目录中是否有.tfignore文件。

如果可以,您的工作区或bin文件夹的源代码控制映射可能有问题。尝试remove the source control bindings并重新绑定到TFS。还尝试删除旧工作区并使用新工作区。

答案 2 :(得分:-1)

你不应该检查node_modules -

  1. 而是使用browserify或WebPack(我建议使用WebPack)来打包你的bundle.js。
  2. 将bundle.js添加到source / scripts文件夹中。从你的html中引用你的bundle.js而不是任何&lt; ../ node_modules /../ scripts&gt ;.
  3. 从构建脚本中删除npm install。由于引用了你的bundle.js
  4. ,你现在不需要它

    WebPack是一个开发步骤,但它可以保护您在开发过程中使用的软件包版本,还可以在部署期间为您节省npm安装问题。