TFS相当于“hg cat”?

时间:2013-06-17 18:18:57

标签: tfs tf-cli tfvc

我想从TFS获取一个文件。在Mercurial的相同情况下,我会做hg cat

TFS中是否有hg cat的等价物?

我正在尝试以下命令行:

tf get $/dev/components/log.zip

但它失败了:

No appropriate mapping exists for $/dev/components/log.zip.

我该怎么做?

3 个答案:

答案 0 :(得分:2)

TFS需要工作空间在服务器存储库和本地计算机之间建立映射。如果您已定义包含$/dev/components/log.zip的工作空间,请在命令行工具中切换到该文件夹​​。

如果要将文件放到目前所在的文件夹中,则需要创建一个新工作区。这可以在团队资源管理器中完成,也可以使用tf.exe:

完成
tf workspace /new logZipWs /collection:http://tfsserver:8080/tfs/DefaultCollection

现在您有了一个工作区,但是您需要将服务器路径映射到本地文件夹:

tf workfold /map $/dev/components . /collection:http://tfsserver:8080/tfs/DefaultCollection /workspace:logZipWs

现在你的命令应该有效。但使用团队资源管理器可以更轻松地创建工作区。

完成后,请确保删除工作区,以便从TFS服务器取消注册(TFS跟踪客户端上服务器上的工作区):

tf workspace /delete logZipWs /collection:http://tfsserver:8080/tfs/DefaultCollection

答案 1 :(得分:1)

您可以使用view子命令在不设置工作区的情况下下载文件。

tf view $/dev/components/log.zip /output:log.zip

不幸的是,虽然命令支持/recursive选项,但递归检索并不实用。如果您尝试使用它,则实际上将使用给定文件类型的默认程序打开所有文件,而不是简单地保存到目录中。但是为了获得一个特定的文件,它可以正常工作。

答案 2 :(得分:1)

您可能还想查看Neno Loje's TfsExport tool,它可以将单个文件或整个路径结构从TFVC下载到磁盘。

当您确实采取创建(临时)工作空间的路线时,请确保在完成后将其删除,否则您将使用TFS服务器注册大量工作空间,这些工作空间只会留在数据库中并占用空间并增加升级所需的时间。

tf workspace /delete logZipWs /collection:http://tfsserver:8080/tfs/DefaultCollection