TeamCity 工件和结帐规则以及 TFS(天哪!



teamcity 6.5中创建工件时遇到实际问题(如果有任何可能性,请使用TFS和MSBuild作为构建运行器,它可能会这样做,因为我发现的任何示例似乎都使用SVN......)。

只要我不输入结帐规则,构建就可以工作。如果我理解它,我需要设置一些工件,它们本身依赖于结帐规则(?

我有两个相同的构建,除了它们的启动方式。一个在办理登机手续时启动一个是从 TC 中手动启动的。此版本是测试版本

程序集版本号来自单个版本信息.cs文件,该文件是解决方案中所有项目中的链接文件。http://www.codeproject.com/Articles/328977/The-Right-Way-to-Version-Your-Assemblies 并保存版本号: [程序集:程序集文件版本("9.1.0.0")]

最终,我无法将测试版本的输出复制到另一个位置。就目前而言,构建的唯一输出是在teamcity数据目录中,例如: C:\TeamCity\buildAgent\work\ceaaf65dc87ff856\Project1\bin\Debug C:\TeamCity\buildAgent\work\ceaaf65dc87ff856\Project2\bin\Debug等

我想将输出文件(exes 和 DLL)复制到具有构建版本号的输出文件夹为了论证起见,让我们说上面的版本号,这将是 c:\BuildServer_Output\解决方案名称\9.1.0.0

目前,我无法创建实际执行任何操作的工件路径 - 即在任何地方复制任何内容。例如,我有一堆工件路径,但没有任何内容被放入 C:\BuildServer_TestBuilds - +:Accounts\bin\debug* => C:\BuildServer_TestBuilds +:BackOffice\bin\debug* => C:\BuildServer_TestBuilds

我是否因为没有结帐规则而没有收到任何工件(因此忽略了我的工件路径)?

任何帮助将不胜感激。

我很

确定工件和结帐规则是完全独立的。工件只是处理已经构建的内容。结帐规则告诉团队城市如何对 VCS 中的更改做出反应和签出更改。

看起来您的工件路径是从绝对路径开始的。我一直发现使用带有通配符的相对路径更容易。这样我就不需要担心团队城市在哪里构建。我们使用以下方法将所有 dll 和 exe 放到一个文件夹中

**binDebug*.*=>deploymentdir

我们的构建配置页面有一个工件链接,当我们打开它时,它将包含类似以下内容

deploymentdircommonbindebugcommon.dll
deploymentdircommonbindebugcommon.pdb
deploymentdirrunnerbindebugrunner.exe

在我们的其他版本之一中,我们使用 msbuild 脚本来平展输出,然后再将其放入工件过程。

我们确实使用结帐规则,但我们不必更改工件路径来适应它们。

最新更新