我有一个msbuild脚本,可以从命令行工作(构建和部署到另一台服务器)。我正在使用vs.net 2012并尝试使用构建定义通过使用完全相同的msbuild参数触发类似的构建我无法使其工作。签入后是否有另一种触发此脚本的方法? 这就是我在命令行中调用它的方式:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe
C:\dev\buildtestkut\mysol.sln
/p:DeployOnBuild=true
/p:PublishProfile=local.pubxml
/p:AllowUntrustedCertificate=true
/p:UserName=myuser
/p:Password=pw
答案 0 :(得分:3)
如果您使用TFS并拥有构建定义,那么您将要查看"触发器"构建定义上的选项卡。
在VS2012中,在“团队”选项卡中,单击“主页”图标。单击构建,然后右键单击要编辑的构建定义,然后单击编辑构建定义。在“触发器”选项卡下,选择“持续集成”。这将导致在每次签入时触发构建。
您还可以选择一个Gated Check-in,这将导致构建在尝试登记时启动,但只有在构建成功时才提交更改。
您的MsBuild脚本是MsBuild项目文件还是VS .sln文件,还是"脚本"你指的是调用msbuild.exe的powershell或批处理脚本?如果是这种情况,那么您可能希望列出脚本和“端口”中的逻辑步骤。这是一个MsBuild文件,可由MsBuild.exe从TFS构建代理启动。 (在构建定义中,单击过程选项卡,必需 - > 要构建的项目 - > 要构建的项目,您可以指定一个或多个可以使用msbuild.exe构建的项目。)