我必须决定是否应该为管理 TFS 服务器及其源代码的客户远程工作。我不太了解这个工具。我创建了所有必要的帐户。
在 Visual Studio 中的解决方案资源管理器中,我看到左侧面板上有服务器和要维护的项目。在右侧面板中,我看到了我电脑的本地目录。
这应该是所谓“TFS 工作区”的一部分。
我想象这个工具的设置远程保存在服务器的某个地方。
TFS 管理员可以编辑工作区吗?
例如,我已在此目录中映射了一个项目:Z:\Sources\ThisCustomer\
是否有可能(也许不是官方的,而是通过一些“未记录的”方式)远程编辑本地目录?我的意思是以管理员身份编辑位于 TFS 服务器前面的工作区。
如果管理员编辑工作区,使映射目录为“Z:”而不是我设置的目录,这是否意味着下次我启动 Visual Studio 时,这个东西会读取并将我的整个磁盘发送给他们?
答案1
当使用特福维克版本控制协议,工作区只是代码项目的本地存储。当您从服务器检索项目以便对其进行处理时,它必须将代码复制到某个地方,这就是工作区的作用。它们只是在 Visual Studio 中映射的本地文件夹。您可以从团队探索者。
工作区相当于你使用Git版本控制协议。虽然 Git 和 TFVC 之间存在许多差异,但在这种情况下,概念非常相似。
工作区主要由开发人员管理,因为它们位于开发人员的工作站上。尽管如此,TFS 确实会跟踪服务器上各个开发人员的工作区,只是为了跟踪在任何给定时间签出的人/地点/内容,但除了管理任务之外,管理的负担都在开发人员身上。
有些 TFS 任务可能需要管理员修改有关开发人员工作区。例如,如果开发人员的 PC 在签出文件时死机了,或者开发人员意外离开公司,则可能需要使用命令行 TFS 工具从服务器中删除该 PC 的旧工作区以删除该签出的记录。
在 Visual Studio 中,您必须先将文件添加到解决方案/项目中,然后才能将其发送到服务器。您必须先添加并签入。此外,如果工作区配置未指向代码项目,Visual Studio 将不执行任何操作,因此不必担心管理员可以将工作区设置为任意非代码位置并因此窃取您的文件。除非 TFS 管理员在您的本地工作站上有管理员权限,否则您无需担心。如果他们在您的工作站上有管理员权限,那么他们可以通过其他方式更轻松地获取您的文件。