zoukankan      html  css  js  c++  java
  • 【TFS 2017】使用浏览器上传文件(TFVC)或者编辑代码,错误提示TF14098,需要对文件有PendChange 权限

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

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

    image

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

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

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

    image

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

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

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

  • 相关阅读:
    PAT (Advanced Level) 1114. Family Property (25)
    PAT (Advanced Level) 1113. Integer Set Partition (25)
    PAT (Advanced Level) 1112. Stucked Keyboard (20)
    PAT (Advanced Level) 1111. Online Map (30)
    PAT (Advanced Level) 1110. Complete Binary Tree (25)
    PAT (Advanced Level) 1109. Group Photo (25)
    PAT (Advanced Level) 1108. Finding Average (20)
    PAT (Advanced Level) 1107. Social Clusters (30)
    PAT (Advanced Level) 1106. Lowest Price in Supply Chain (25)
    PAT (Advanced Level) 1105. Spiral Matrix (25)
  • 原文地址:https://www.cnblogs.com/danzhang/p/7417834.html
Copyright © 2011-2022 走看看