我正在尝试将持续集成实施到我们的日常工作中。在我们的团队中,我们正在从仅仅在我们的工作站上的 Visual Studio 中构建我们的代码并进行部署,到使用 MSBuild.exe 并在我们的构建服务器(即 Jenkins)上自动化而不使用 Visual Studio。
在我们的项目中,我们对引用(例如 Automap)有外部依赖关系。因为自动映射(例如)dll 不在构建服务器上,所以 msbuild 执行失败,原因很明显。还有其他 dll 我需要成为构建的一部分,我只是使用 automap 作为示例。
那么,作为自动构建的一部分,在构建服务器上获取任何依赖项的最佳方式是什么?我已经看到对使用“lib”文件夹的引用,但我真的不明白我应该把它放在哪里(在我的项目、文件系统、SVN ...?),以及构建服务器将如何到达它。我还读到 NuGet 可以对依赖项做一些事情,但是我的构建服务器没有连接到互联网,我不明白如何让我的构建拉取我可能创建的 NuGet 包,以及它是如何实现的一起工作。
编辑:我正在使用颠覆,我们不能使用 TeamCity,因为我们必须购买它,而且获得资金的机会为零。