visual-studio - 在 Mac 文件共享/unc 路径上工作时出现奇怪的 Visual Studio TFS 行为

标签 visual-studio visual-studio-2013 osx-yosemite unc

我正在使用 Yosemite 在 Mac 上工作。昨天我安装了 Visual Studio 2013 的 Update 4,并注意到在使用 TFS 2013(和 TFS 作为 SCM)时出现了一个奇怪的行为。我的源文件作为本地工作区映射到 Mac 上的 UNC 路径。

当我更改我的文件并尝试 checkin 时,我收到以下消息:

\\psf\Home\Documents\My\TFS\Customerproject\Source\Calculation\WeightCalculation.cs: Access to the path is denied.

当我搁置更改并取消搁置它们时,我可以 checkin 文件。当我收到消息“访问被拒绝”时,我可以在每个文件上重现这一点。

更新 我只是玩了一下,然后:我不需要取消搁置文件。搁置它们并检查“在本地保留挂起的更改”就足够了。在那之后,我可以办理登机手续。

我试图删除 Windows 中的“只读”标志,并在源文件夹上执行了 `chmod -R 777 Source"以允许所有人访问。但这并不能解决问题。只有搁置解决方法有效。

以管理员身份启动 Visual Studio 也不能解决问题。

其他任何人都注意到这种行为或知道如何解决它?

最佳答案

我所做的是将本地工作区更改为 服务器工作区 在 Visual Studio 中(macOS Sierra + Windows 10 on Parallels);

  • 文件 > 源代码管理 > 高级 > 工作区...
  • 在列表中选择您的工作区并点击编辑...
  • 点击高级>>
  • 将位置更改为 服务器 然后点击确定并关闭

  • 现在,您应该无需搁置即可办理登机手续。

    注意还有一些differences between a local and server workspace ,但就我而言,它适用于服务器工作区;

    Why should I use a local workspace?

    When you use a local workspace, you get the following advantages:

    Work offline easily. You can quickly begin editing a file when your network connection is unavailable or unreliable. From Solution Explorer you can add, edit, delete, rename, undo, and compare items in your workspace even when you're not connected to your Team Foundation Server.

    Easily restore files that you have deleted locally. To restore locally deleted files, just get your files.

    Visual Studio automatically detects changes. When you add or delete files outside of Visual Studio, the program automatically detects these changes.

    Important: One drawback to using a local workspace is that performance degrades as the number of items increases. See the next section for details.



    我什么时候可能需要使用服务器工作区?

    使用服务器工作区时,Visual Studio 仅保留一份
    每个文件。这可以显着减少磁盘空间使用并提高
    当你有很多项目时的表现。我们建议您使用
    服务器工作区,如果:

    您的工作区包含 100,000 多个项目。

    您想使用 Visual Studio 2010 或更早版本来处理
    工作区。

    您需要使用 启用在退房时获取最新信息 选项。

    离线工作困难且性能不佳。 当你
    在服务器工作区中脱机,您无法使用本地文件
    因为在您检查它们之前它们是只读的。你可以退房
    文件仅来自解决方案资源管理器,并且只有在您切换到
    离线模式(如下所述)。当您处于离线状态时,您无法
    执行任何其他操作,例如添加、删除、重命名或撤消。

    Tip: You can improve responsiveness by enabling asynchronous checkout. For more information, see Manage team project collection workspace settings for your team.

    关于visual-studio - 在 Mac 文件共享/unc 路径上工作时出现奇怪的 Visual Studio TFS 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27111534/

    相关文章:

    c++ - 在 midl 生成的头文件中定义一个结构

    visual-studio - Visual Studio 和 Nuget : Package Manager Console commands history?

    c# - 带有不同过滤器的 Entity Framework 6 查询

    c++ - 如果使用多字节字符集,为什么 TCHAR 值会改变?

    c# - WPF 设计器无法加载 VS2015

    razor - 确保将所有* .cshtml文件设置为 “Content”进行构建操作

    c++ - 本地 Windows 调试器替换为附加,无法运行和调试我的程序

    objective-c - 如何获取 NSWindow 标题栏的颜色,特别是当窗口失去焦点时?

    postgresql - 如何使用 MacPorts 在 OSX Yosemite 上安装 PostgreSQL

    C 程序(在 OS X 中)- 文件是为存档构建的,不是被链接的体系结构 (x86_64)