TeamCity设置和库

时间:2015-08-29 04:09:52

标签: tfs msbuild continuous-integration teamcity

我已部分成立了TeamCity。现在它从TFS下载代码并尝试使用不成功的MSBuild构建它。我知道我做错了什么。我有一些库添加到我的代码(一个ASP.NET网站)。我知道将dll文件添加到版本控制(TFS)并不是一个好主意,但是如果我不检查它们,当TeamCity下载代码时,它没有那些库,因此MSBuild无法成功构建它。我想知道解决这个问题的最佳做法是什么?

3 个答案:

答案 0 :(得分:2)

对于.net中的依赖关系管理,我建议你看一下nuget feed中内置的TeamCity。您可以直接从TeamCity中使用Feed,充当服务器。正如您所述,应该真正避免在(任何)VCS中提交依赖...

答案 1 :(得分:0)

这取决于你正在处理什么类型的dll。

如果它们在NuGet.org上可用,请使用NuGet和程序包管理器控制台添加对您的解决方案的引用。然后只需将NuGet.exe放在Build Server上,然后运行

NuGet.exe restore YourSolution.sln

作为您的第一个构建步骤。

如果他们是内部dll,那么你有几个选择。第一个是,正如TeNGiL所提到的那样,建立一个私有的NuGet存储库,并将内部dll发布到该feed,并在构建服务器中从中提取。

另一种选择就是创建一个'参考'源代码管理中的目录,它包含dll,在源代码管理目录中从解决方案中引用它们,然后在构建配置中将它们拉下来。这听起来并不合理,在合理范围内,并且是一个完全可以接受的临时解决方案,直到每个人都在使用私有NuGet提要或其他类似的东西。

答案 2 :(得分:0)

在visual studio中打开TeamCIty的checkout目录中的代码并尝试构建。我非常确定visual studio会为您提供错误信息。

缺少包裹必须恢复。使用Nuget安装程序构建步骤恢复您的包,如下图所示。

Buils Step