我正在使用TFS 2010并编写脚本来简单获取我们软件的特定版本标签。由于这只是一个简单的获取,无论如何只需要执行获取而不必使用当前工作空间设置或将工作空间设置更改为所需的路径? get之后没有理由将文件链接到CM,所以我没有理由保留这个“工作区”。我只是希望能够在任何我想要的地方创建一个目录,并让TFS给我一份当前版本标记文件的当前目录,或者我即时提供的目录。似乎没有办法从项目工作区设置中分离出简单的get。我是否遗漏了某些东西,或者在获取之前我被迫隐藏或更改工作区设置?
答案 0 :(得分:13)
您需要一个工作区来执行get
,但它不必与您用于Visual Studio的工作区相同。实际上,您可以创建一个简单的一次性工作空间,例如:
# {{Server}} is http://server:8080/tfs/DefaultCollection; for readability.
tf workspace /new temp_workspace /collection:{{server}} /noprompt
tf workfold /map $/Project/Project C:\Build\Project
tf get C:\Build\Project /recursive /noprompt
tf workspace /delete temp_workspace /collection:http{{server}} /noprompt
请注意,TFS SDK确实提供了下载Item
而无需创建工作区的机制,因此您可以编写一个程序来执行此操作,但要避免使用相当多的代码创建一个工作区,最终是一个相当便宜的操作。
答案 1 :(得分:1)