Angularjs 如何使用TFS中的project设置gulp watch以避免EPERM问题

Angularjs 如何使用TFS中的project设置gulp watch以避免EPERM问题,angularjs,visual-studio-2013,tfs,gulp,Angularjs,Visual Studio 2013,Tfs,Gulp,我使用angularJS和bower来管理web UI中的依赖项,并使用npm来管理web UI中的bower、gulp、karam等依赖项。该项目全部存储在TFS中,我们使用VS2013,因为我们有一个Web API v2项目,该项目正在从SQL Server返回数据。我真的很喜欢前端的紧密反馈循环,但现在我们已经将我们的项目添加到TFS中,我必须继续: 在我的powershell窗口中停止gulp命令 删除“dist”文件夹中文件的只读权限 在我的powershell窗口中再次开始吞咽 看起

我使用angularJS和bower来管理web UI中的依赖项,并使用npm来管理web UI中的bower、gulp、karam等依赖项。该项目全部存储在TFS中,我们使用VS2013,因为我们有一个Web API v2项目,该项目正在从SQL Server返回数据。我真的很喜欢前端的紧密反馈循环,但现在我们已经将我们的项目添加到TFS中,我必须继续:

  • 在我的powershell窗口中停止gulp命令
  • 删除“dist”文件夹中文件的只读权限
  • 在我的powershell窗口中再次开始吞咽
  • 看起来,即使由于gulp用于在“dist”文件夹中构建文件而没有将“dist”文件夹签入TFS,但在gulp完成后,它们仍被设置为只读


    我宁愿不必从TFS签出web UI项目中的所有文件,这样gulp、gulp watch和livetreload就可以工作了。在签入TFS之前,我已经让它工作了。在TFS中,我可以轻松地更改文件、保存文件,然后在浏览器中查看,但由于EPERM错误,这不再有效。

    您应该在TFS中使用不需要只读标志的本地工作区


    它们早在2012年TFS时就被引入。如果您使用的是2010年之前的TFS服务器,那么您已经不受支持,2010将在几个月内失去支持。

    TFS似乎没有问题,而是gulp将文件设置为只读。此代码:

    var chmod = require('gulp-chmod');
    
    gulp.task('copy-images', function() {
      gulp.src(path_resource_images + '**/*.jpg')
    .pipe(chmod(666))
    .pipe(gulp.dest(path_app_images));
    });
    

    我在这里找到:

    谢谢。不幸的是,他们正在使用TFS2010,但已经谈到了更新。很高兴知道TFS已经变得更好,不再需要只读标志。太糟糕了,我当前的客户端仍在TFS 2010上。请确保他们知道支持已用完。我会努力说服他们去VSO…我喜欢这项工作!谢谢你把这个信息传给皮特!