从TFS 2015开始,微软在TFS系统中增加了一个非常吸引开发人员的功能,“快速代码编辑器” (Quick Code Editor)。使用这个功能,你可以在任何安装了浏览器的设备上编辑TFS服务器中的源代码;你可以脱离庞大的IDE开发工具实现快速代码更新。如果在TFS系统配置了持续集成和持续发布(CI/CD),那么开发人员使用浏览器,就可以快速更新测试环境/生产环境中的功能。这个功能一经推出,马上收到了广大TFS用户的喜爱。

但是在使用过程中,许多客户跟我抱怨,如果对用户的默认权限进行了设置以后,发现无法通过浏览器更新源代码,也不能上传文件,系统提示“TF14098: 拒绝访问: 用户 张洪君 需要 $/金融风险管理系统/微信图片_20170822215012.jpg 的 PendChange 权限。”(如下图)。而与此同时,用户却可以在Visual Studio中签入修改源代码。出现这样的现象,大家觉得难以理解。

通过对用户权限设置的检查,我们发现,使用浏览器的文件更新功能,用户必须具备“签出”(在TFS 2017中改名为“挂起服务器工作区中的更改”)权限。

这个“签出”权限在TFS 2010以后,我们就较少用到。这是因为TFS 2010开始引入了本地工作区和服务器工作区的功能,且默认设置中,用户的工作区为本地工作区。

  • 在服务器工作区模式下,如果用户没有签出权限,是不能对源代码做任何修改的。如果你尝试在Visual Studio 中修改代码,系统会提示“TF14098: 拒绝访问: 用户 张洪君 需要 $/金融风险管理系统/README.md 的 PendChange 权限。”(如下图)。
  • 在本地工作区模式下,即使没有这个权限,用户也可以修改代码。当用户更改源代码时,TFS客户端会自动将文件标记文签出状态,但是这个状态是保留在本地,不会存储到TFS服务器通知其他用户。但是用户如果尝试签出并锁定文件时,则系统会提示上面相同的错误信息。

(微软ALM MVP 张洪君 http://www.cnblogs.com/danzhang

从上面的分析可以得出结论,TFS的快速代码修改功能(Quick Code Editor)使用了服务器工作区的配置信息。因此,只有配置了“签出”(或“挂起服务器工作区中的更改”)权限的用户,才能通过浏览器更新代码库中的文档、源代码等文件信息。

【注意】这项权限设置,仅影响TFVC代码库的权限设置,Git代码库的权限与TFVC完全不一样。

【TFS 2017】使用浏览器上传文件(TFVC)或者编辑代码,错误提示TF14098,需要对文件有PendChange 权限的更多相关文章

  1. 如何上传网站程序(文件浏览器上传网页、FileZilla上传网站程序)

    问题场景: 网页制作完成后,程序需上传至虚拟主机. 注意事项: Windows系统的主机请将全部网页文件直接上传到FTP根目录,即 / . Linux系统的主机请将全部网页文件直接上传到 /htdoc ...

  2. 使用input:file控件在微信内置浏览器上传文件返回未显示选择的文件

    使用input:file控件在微信内置浏览器上传文件返回未显示选择的文件 原来的写法: <input type="file" accept="image/x-png ...

  3. SpringMVC+Ajax实现文件批量上传和下载功能实例代码

    需求: 文件批量上传,支持断点续传. 文件批量下载,支持断点续传. 使用JS能够实现批量下载,能够提供接口从指定url中下载文件并保存在本地指定路径中. 服务器不需要打包. 支持大文件断点下载.比如下 ...

  4. spring mvc 图片上传,图片压缩、跨域解决、 按天生成文件夹 ,删除,限制为图片代码等相关配置

    spring mvc 图片上传,跨域解决 按天生成文件夹 ,删除,限制为图片代码,等相关配置 fs.root=data/ #fs.root=/home/dev/fs/ #fs.root=D:/fs/ ...

  5. java 附件上传、下载前后端代码

    前言:业务需要:附件上传,需要同时满足浏览器上传,和APP上传附件,并且浏览器端不可使用form表单提交,因为表单提交无法直接获取返回值,除非刷新页面才可显示上传的附件.所以此处使用ajaxfileu ...

  6. 百度编辑器上传大视频报http请求错误怎么办

    百度编辑器UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码,所以受到很多开放人员的青睐.但是有时 ...

  7. Android上传图片到PHP服务器并且支持浏览器上传文件(word、图片、音乐等)

    暑假已经过了一半了,这才完成计划当中的第二个任务.虽然进度是慢了点.但也算是暑假的收获吧.下面我就把我学习当中的收获记录在此. 还是跟以往一样,先上图片. 操作的步骤:打开程序---->选择上传 ...

  8. IE浏览器上传文件时本地路径变成”C:\fakepath\”的问题【转】

    转自:http://www.iefans.net/ie-shangchuan-bendi-lujing-fakepath/ 在使用<input id="file_upl" t ...

  9. uploadify上传文件Firefox浏览器上传失败解决方法

    近期做文件上传使用到了uploadify 可是出现了各种奇葩的问题.并且针对各个不同浏览器问题不同 在Firefox中.非常坑爹的是.每次上传就丢失session值,可是我的系统在登录.保存文件文件夹 ...

随机推荐

  1. python3 django连接mysql,同步表结构

    第一步:安装PyMySQ代替MySQLdb pip3 install PyMySQL 然后在工程目录的__init__.py中填写下面两句话   import pymysql pymysql.inst ...

  2. Windows XP with SP3大客户免激活日文版

    原贴地址:http://www.humin.com.cn/ja_windows_xp_professional_with_service_pack_3_x86_dvd_vl_x14-74058-iso ...

  3. java并发:CAS算法和ABA问题

    CAS算法是硬件对于并发的支持,针对多处理器操作而设计的处理器中的一种特殊指令. CAS用于管理对共享数据的并发访问. java的并发包中,AQS.原子操作类等都是基于CAS实现的. CAS 是一种 ...

  4. 第六章 图(d)深度优先搜索

  5. 【vs2010】转换到 COFF 期间失败: 文件无效或损坏

    不知怎么本来编译好好的VS2010环境,忽然出现“转换到COFF 期间失败:文件无效或损坏”的链接错误.花了好多天,试了好多方法,最终解决了这个问题. 现在罗列一下这几种解决方案: 方案1:      ...

  6. 使用web页面实现oracle的安装和测试

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. [leetcode]125. Valid Palindrome判断回文串

    Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignori ...

  8. vsftp 500 OOPS: cannot change directory:/home/xyp

    1.在linux终端下输入: > setsebool ftpd_disable_trans 1 (*如果出现Could not change active booleans: Invalid b ...

  9. 小X归来 模拟赛1 解析

    Problem1 单峰 小X 归来后,首先对数列很感兴趣.他想起有1类特殊的数列叫单峰数列. 我们说一个数列 {ai} 是单峰的,当且仅当存在一个位置 k 使得 ai < ai+1(i < ...

  10. 201621123008 《Java程序设计》第二周学习总结

    1. 本周学习总结 通过查询API掌握了一下几种类的基本用法: String类 StringBuilder类 ArrayList类 BigInteger类 BigDecimal类 Arrays类 认知 ...