【问题标题】:All files are marked as read only after check in to TFS from Visual Studio 2012从 Visual Studio 2012 签入 TFS 后,所有文件都标记为只读
【发布时间】:2013-11-08 09:43:09
【问题描述】:

我有两个项目的解决方案。我刚刚标记了解决方案并将其签入,现在所有文件的左侧都有蓝色挂锁的小图像,这显然意味着它们被标记为只读。

到目前为止,我一直只使用 Tortoise SVN,这是我第一次签入 TFS,为什么会发生这种情况,或者如果这里的答案太复杂,至少我怎样才能返回状态我的文件(可能是整个解决方案)恢复正常。

此外,我一直在努力寻找关于如何从 Visual Studio 2012 使用/执行 TFS 基本任务的良好阅读/教程,因此,如果有人可以分享有关该主题的良好信息来源,我将不胜感激。

【问题讨论】:

    标签: visual-studio-2012 tfs


    【解决方案1】:

    事实上,这很正常。您正在使用a "server workspace",或连接到 TFS 2012 之前的 TFS 服务器。Team Foundation Server 有多种工作模式:

    1. 签出/编辑/签入系统(通过“服务器工作区”)意味着您需要明确签出文件才能开始编辑。文件保持只读状态,以便快速向您指示哪些文件已签出以及哪些文件需要签出。如果您只是开始在理解 TFS 版本控制(Visual Studio、Eclipse)的 IDE 或编辑器中输入内容,那么 IDE 将为您检查文件。否则,您将需要手动签出文件(通过在源代码管理资源管理器中选择“签出以进行编辑”或运行tf checkout <filename>。)

      这种类型的系统对于拥有非常大的存储库或这些存储库中的文件非常大的团队非常有用;通过明确指示源代码控制系统您正在编辑文件,可以避免扫描文件系统的需要。

    2. 编辑/合并/提交系统(通过“本地工作空间”)意味着您不需要采取任何明确的操作来签出文件,当您查询待处理的更改时,磁盘将被扫描以确定您所做的更改。本地工作区是 TFS 2012 中的默认设置,但您或您的管理员可以change this default

      这类似于 Subversion 的操作方式,通常适用于大多数存储库,但是如果您在树中使用保留大型二进制文件,这可能不是一个好的选择。

    3. 分布式版本控制系统(通过 git)意味着您在本地拥有存储库的完整克隆,并允许您在离线时完全独立工作并共享您的更改或接收其他人的更改觉得合适。 Git 是 TFS 2013 和 Visual Studio 2013 中的新功能。

      这种类型的系统对于高度分散的团队和希望利用新颖分支策略的团队非常有用,但可能不适合对细粒度权限有非常复杂要求的团队。

    如果您的服务器是 TFS 2012 或更高版本,并且您想将现有服务器工作区转换为本地工作区,您可以打开“编辑工作区”对话框并在高级设置中更改工作区的类型。这将使您的所有文件都可写,并且您将继续在类似 Subversion 的模式下工作。

    【讨论】:

    • 但是你会得到奇怪的东西,比如一个新创建的本地项目是只读的,但你不能检查它,因为它不在 vc 中:/
    【解决方案2】:

    这是很正常的,文件有锁。 但是,您可以设置不同签入/签出策略的源代码控制级别。

    链接:http://msdn.microsoft.com/en-us/library/ms181237(v=vs.90).aspx

    对于全球文档:

    1. 源代码控制:http://msdn.microsoft.com/en-us/library/vstudio/ms181368.aspx
    2. Tfs 全局:http://msdn.microsoft.com/en-us/library/vstudio/hh529827(v=vs.110).aspx

    【讨论】:

      猜你喜欢
      • 2013-02-13
      • 2013-07-06
      • 2013-07-13
      • 2013-05-19
      • 2017-02-13
      • 2020-07-15
      • 1970-01-01
      • 1970-01-01
      • 2017-09-30
      相关资源
      最近更新 更多