【问题标题】:TFS 2010 Custom Build WorkflowTFS 2010 自定义构建工作流程
【发布时间】:2011-10-28 23:29:38
【问题描述】:

我是一名 PHP 程序员,我通常不在 Visual Studio 中工作,尤其是不使用 Team Foundation Server,但我目前的工作需要我使用它。

我的问题是我需要创建一个自定义构建工作流(.xaml 文件),它将我的最新源代码从项目的开发版本(TFS 中的源代码控制)复制(最好是压缩)到网络共享(\myserver\ myshare\myproject) 当我点击 Queue 新版本时。

我尝试通过可视化编辑器位我没有任何积极的结果(我所想的是如何制作一个变量),我试图手动编辑 .xaml 文件(文本编辑器)但它没有让我走得很远......

它不需要了解解决方案或项目,只需将文件从 TFS 源代码管理中的项目文件夹复制到网络共享....

我需要一步一步,点击指导如何做, 提前致谢

使用的软件:Visual Studio 2010 Pro、Team Foundation Server 2010、VS.PHP 2.10.3

【问题讨论】:

  • 删除了 PHP 标记,因为问题不是 关于 PHP,并添加了问题所在的工作流基础。

标签: visual-studio-2010 msbuild workflow workflow-foundation


【解决方案1】:

要进行复制,请在SyncWorkspace 活动之后添加一个CopyDirectory 活动(名为“Get Workspace”,位于 Process / Sequence / Run On Agent / Initialize Workspace),然后设置 Source propertySourcesDirectoryDestination property 到您的网络共享,或者如果您愿意,可以使用具有该值的变量。

要压缩文件,您可能需要使用 InvokeProcess 活动,调用某种脚本并将 SourcesDirectory 变量传入:例如,这就是 zip files with powershell 的方法。

编辑:

要执行批处理文件,请从 Visual Studio 工具箱(特别是 Team Foundation 构建活动选项卡)中获取一个 InvokeProcess 活动,然后将其放到工作流中。单击活动,按 F4 键查看属性窗口,然后填写批处理文件的路径以及要传递给它的任何参数。如果活动没有出现在您的工具箱中,请关注 these instructions

【讨论】:

  • 嗨,如果我知道你在说什么,我相信这将是非常有用的帖子..,我今天第一次在 Visual Studio 2010 工作..,我可以以某种方式执行批处理TFS 上的脚本?什么是最简单的?在哪里点击添加活动?我需要点击指南....
【解决方案2】:

简单的选项是使用标准构建模板运行,并使用放置文件夹所需的 UNC 路径配置构建定义。当构建完成时,这会将工作空间中的所有源推送到该位置。然后,您可以自己手动压缩它。如果您想自动压缩它,那么您将像其他人建议的那样自定义构建模板。

【讨论】:

    【解决方案3】:

    在 Visual Studio 2010 中,使用“视图”>“工具箱”查看所有活动,然后拖放它们。其中一些还具有要设置的属性。

    【讨论】:

    • 知道为什么我的自定义活动不会“丢弃”吗?我得到没有符号(带斜线的圆圈)
    【解决方案4】:

    您将需要按照您的期望自定义工作流程,您可以看到以下链接,该链接通过图像逐步描述如何在构建中自定义文件夹

    http://lajak.wordpress.com/2011/05/07/customize-binaries-folder-in-tfs-team-build/

    谢谢

    M.拉德万

    【讨论】:

    • 嗨,对不起,我没有提到该项目是一个 PHP 项目,用 VS.PHP 制作,所以我不需要任何解决方案/工作区/编译东西...,它会如果我知道如何在 TFS 上执行批处理脚本会很棒吗?我需要点击指南..,谢谢
    【解决方案5】:

    如果您想在 TFS 服务器上执行脚本,有不同的方法:

    1. 转到运行 TFS 服务器的机器
    2. 访问命令提示符。
    3. 运行您的脚本。

    以上也可以通过各种工具或远程桌面远程运行。

    如果您想自动化脚本以在 TFS 服务器上运行,还有很多选项。例如,您可以让 AT 安排批处理作业(*.BAT 或 *.CMD)在特定时间运行。

    如果您希望在将内容检入 TFS 或“构建”时运行部署脚本,则需要使用 MS 工作流基础。即使您实际上没有编译任何东西,它也被称为“构建”。这些构建脚本具有标准格式,其中将包括编译步骤,就像真正的编程语言一样。您可以放心地忽略这些步骤,让它们留在那里。

    在 TFS 条目中的 Builds 下为您的项目在 TFS(或我猜是网站?)。克隆一个现有的构建并制作一个新的。也为您的 PHP 部署过程创建一个新的 XAML 文件,否则如果其他人将您的 TFS 用于其他事情,您将破坏正常的构建。在构建过程 XAML 中,按照上述答案中的说明进行更改。在构建的属性对话框中,(这里有两个单独的词,“构建”,您可以拥有许多遵循相同“构建过程”的词。您可以使用相同的过程来部署许多不同的 PHP 站点,例如目标文件夹将在您的各种构建的属性页面的“进程”选项卡中提供),在触发器下,将其设置为持续集成,这意味着您的这个新构建和您的这个新的自定义构建过程将在您每次运行时运行签到。

    你去吧。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-05
      • 1970-01-01
      相关资源
      最近更新 更多