【问题标题】:"Access to the path is denied." when attempting to check in files to TFS“访问路径被拒绝。”尝试将文件签入到 TFS 时
【发布时间】:2015-03-06 02:52:57
【问题描述】:

我突然开始在我的多个本地文件中遇到类似于 "E:\Websites\Stage\mywebsite\somefile.ascx: Access to the path is denied" 的错误检查它们。失败的文件是各种文件,PNG、ASPX、CONFIG 等。

我正在使用 Visual Studio 2013 for Web(更新 4)和 visualstudioonline.com TFS。

文件存储在网络位置,我有一个映射到该位置的驱动器。我可以手动打开、操作和保存任何出错的文件,所以我不认为这真的是权限问题。

这个设置已经工作了几个月,但突然给我带来了问题。

我在文件夹 Get-ChildItem -Include *.* -Recurse -Path 'E:\Websites\Stage' | select fullname,isreadonly 上运行了一个 powershell 脚本,所有文件在 isreadonly 列下都返回“False”。不返回任何错误。

我需要一些进一步的想法。

【问题讨论】:

  • 它可能已经工作了几个月,但不受支持...

标签: visual-studio-2013 tfs azure-devops


【解决方案1】:

不支持将您的本地工作区存储在网络位置,并且永远不应这样做。

拥有一个“本地”(物理上在您的本地计算机上)工作区,您可以在其中编辑文件并签入。然后进行自动构建,将文件发布到您选择的位置。

【讨论】:

  • 叹息。这就是为什么微软产品如此糟糕的原因。在 git 中,网络位置只是另一个位置,它应该是
  • 基于服务器的源代码控制、wither TFVC、Subversion 或 Perforce,不是 Git,也不像 Git 那样执行。微软非常支持 TFS 中的 Git。不要因为您的选择而责怪供应商。
【解决方案2】:

我在另一个StackOverflow question 中找到了解决方法。

基本上,您搁置待处理的更改,然后提交它。无需取消搁置它们。

我只建议使用它来签入您的更改,直到您在本地设置另一个工作区(或有人修复了该问题)。

与其他许多一样,在更新到“VS2013 update 4”之前,在具有位于主机上的本地工作区的虚拟机中使用 Visual Studio 2013 通过共享驱动器映射的效果很好。

向我建议该设置的原因是,如果 VM 崩溃,那么我不会丢失我的更改。

【讨论】:

  • 奇怪的是,这个“入住前的货架”解决了这个问题。
  • 利用软件中的错误作为解决方法并不能消除活动的风险。这不是受支持的模型。使用本地磁盘位置。
  • 这在 Visual Studio 2017 (Pro) 中仍然是一个问题,您相信吗,但同样的解决方法仍然有效 - 谢谢!
  • 经过数小时的搜索,更改权限(在 Catalina 上),answer in that linked SO post 将您的 workspacelocal 更改为 server 对我有用。 Hth.
【解决方案3】:

我在 Mac 上运行 Parallels 中的 Windows/Visual Studio,并在我的桌面上保存了一个项目(是的,真丢脸)。在内部,此路径作为 \\psf\Home\Desktop 处理,即使它存储在本地而不是网络中。仍然给出相同的异常,并通过将其移动到您的常规驱动器来解决 (c:\...)

【讨论】:

  • 它仍然是共享位置,不支持。工作区对于 Maher 和用户来说应该是唯一的。因为这看起来像一个共享位置,所以会导致同样的错误。
猜你喜欢
  • 2011-11-29
  • 1970-01-01
  • 2015-03-19
  • 2020-07-26
  • 2015-08-09
  • 2012-02-29
  • 1970-01-01
  • 2021-07-08
  • 2016-11-11
相关资源
最近更新 更多