如何下载TFS shelveset

时间:2012-10-26 07:15:40

标签: tfs shelve unshelve

我需要从TFS下载一个shelveset到一个本地文件夹。是否有任何工具或加载项供Visual Studio 2010下载shelveset

3 个答案:

答案 0 :(得分:41)

如果您只需要从shelveset获取文件到本地文件夹,这是一个正常的过程,名为Unshelve。 它文件下载到本地文件夹。

enter image description here

例如,在取消搁置之前,您在本地文件夹中有以下内容:

  
      
  • 档案1
  •   
  • 文件2
  •   

shelveset 有:

  
      
  • 文件1 (已修改)
  •   
  • 文件3 (已创建)
  •   

取消搁置后会有:

  
      
  • 文件1 (已更新)
  •   
  • 文件2
  •   
  • 文件3 (已添加)
  •   

如果您需要在工作区文件夹中只有仅来自shelveset的文件而没有其他任何内容,其中一种方法是:

  1. 创建新工作区,但不下载任何内容(即不要获取最新版本)
  2. 那应该创建一个空的本地文件夹
  3. 使用Visual Studio或tf.exe
  4. 取消搁置
  5. 您应该只有来自shelveset的文件
  6. 您可以在此处找到有关管理搁置集的更多信息: Suspend Your Work and Manage Your Shelvesets (MSDN)

答案 1 :(得分:1)

使用命令提示符,我们可以获取文件的转储:

set shelveset=<ShelvesetName>
set temppath=c:\temp\%shelveset%
md %temppath%

for /f "delims=;" %t in ('tf status /shelveset:%shelveset% /format:detailed ^| find ^"$^"') do tf view %t /shelveset:%shelveset% /noprompt > %temppath%\%~nxt

请注意,这会产生一个扁平结构,如果存在同名文件,则会重写。

答案 2 :(得分:0)

  1. 关闭Visual Studio
  2. 重命名文件夹,例如将postfix original添加到文件夹名称中 “SolutionX”文件夹变为“SolutionX - Original”
  3. 再次制作一个“SolutionX”文件夹,这将是空的
  4. 打开VS,取消搁置shelvset1,“SolutionX”现在只有shelvset1 文件
  5. 关闭VS(可能不需要)
  6. 重命名“SolutionX”,例如到“SolutionX Shelveset1”
  7. 再次制作一个“SolutionX”文件夹,这将是空的
  8. 打开VS并撤消待处理的更改
  9. 取消搁置shelvset2,“SolutionX”现在只有shelvset1 文件
  10. 关闭VS,将“SolutionX”文件夹重命名为“SolutionX Shelveset2”
  11. 将“SolutionX - Original”文件夹重命名为“SolutionX”
  12. 打开VS并撤消待处理的更改
  13. 使用比较工具比较“SolutionX Shelveset1”和“SolutionX Shelveset2”

    如果您发现某些步骤不需要,请让我知道更新此问题,我尝试了第一个答案,遇到问题而不得不提出这个问题。