【问题标题】:TFS Get latest Version from Specific FolderTFS 从特定文件夹获取最新版本
【发布时间】:2011-08-19 01:07:59
【问题描述】:

我想创建 at 按钮以从特定文件夹获取我的代码的最新版本,而无需每次都使用团队资源管理器 -> 源代码控制树。

所以我正在尝试制作和外部工具引用来运行 tf.exe get 命令。

这是我目前所拥有的。

当我运行时,这给了我这个错误:

无法识别的命令选项“工作区”

我不知道如何提供工作区名称?

【问题讨论】:

  • 为什么要承受这些痛苦?您可以右键单击任何解决方案/项目节点,然后单击Get Latest。或者您可以自定义任何工具栏并在其中添加命令以便于访问。
  • 因为我们有高于解决方案文件夹的资源和程序集,所以这不是一个选项。
  • 我没有看到您指定工作区选项,所以我不确定您为什么会看到此错误。您是否尝试过添加 /workspace:WORKSPACENAME (显然,将 WORKSPACENAME 替换为您的 TFS 工作区名称......?)您确实需要 /workspace 和工作区名称之间的冒号(这可能会导致此错误。)跨度>
  • 是的,我尝试了它的变体,get 上似乎没有 /workspace 标志

标签: visual-studio tfs


【解决方案1】:

您可以省略工作区名称。 tf.exe 可以解析服务器路径和本地路径映射,因为它在本地存储工作空间信息。

您给出的命令是正确的(假设您已映射$/Dev):

tf.exe get /recursive $/Dev

但是,您必须直接映射 $/Dev(不仅仅是映射子节点)并且明确(您不能在两个不同的工作区中映射 $/Dev),否则 tf.exe 将无法确定正确的本地路径。

由于给定的本地路径只能映射到单个服务器路径,因此最简单的方法就是指定您希望获取的本地路径。例如:

tf.exe get /recursive C:\Dev

再次假设您已将 $/Dev 映射到 C:\Dev

【讨论】:

    【解决方案2】:

    获取最新的命令是

    tf get /force /recursive /version:W<workspacename>
    

    需要注意的一件事是您没有在初始目录文本框中提供的工作区。提供一些路径,它将下载文件的本地副本(即除了称为工作流之外什么都没有)。提供一些路径,如 C:\TFS\Apps

    【讨论】:

    • 所以我尝试了这个get $/Source/Dev /force /recursive /version:W&lt;WORKSPACENAME&gt;,它的消息是无法确定工作区。您可以通过运行 'tf workspaces /collection:TeamProjectCollectionUrl' 来纠正此问题
    • 是的,这是另一种解决方案,但以你的情况为例,我在上面的答案中写了
    • 这不会获取最新版本,这将强制获取 WORKSPACE 版本。如果服务器上有更新的版本,将不会被检索。您希望 /version:T 获得最新版本。
    • 是的,我尝试过使用与上述评论相同的消息
    【解决方案3】:

    除了 Mrchief 给出的答案:如果您安装了TFS power tools,您可以使用 windows-explorer 中的 contextmenü 进行签入/签出等。

    【讨论】:

    • 我想这样做,所以我可以一键更新 - 无需使用任何其他工具或浏览任何内容。
    • 您可以设置 VS 以在签出时获取最新文件。也许这会更容易?
    • 是的,我有那套 - 这是全天的周期点。
    猜你喜欢
    • 1970-01-01
    • 2016-01-01
    • 2011-11-04
    • 2016-09-08
    • 2010-12-08
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多