使用tfs构建将预构建的公共组件拉入另一个构建中

使用tfs构建将预构建的公共组件拉入另一个构建中,tfs,msbuild,build-process,tfsbuild,Tfs,Msbuild,Build Process,Tfsbuild,我正在寻找有关如何让team build 2013使用未签入或未作为工作区一部分的预编译公共项的建议。 我们构建的一切都是基于QNX的,我们正在重构一组公共组件,以便在所有项目中共享。我看过Go和NuGet,但对于这样的东西来说,这似乎是一个很大的努力。 将预构建的公用程序拉入TFS团队构建的最佳方式是什么?这样您就可以发布一个包了 然后,您的构建将使用packages.config文件aka而不是.sln文件进行nuget还原 nuget restore [<solution>|&

我正在寻找有关如何让team build 2013使用未签入或未作为工作区一部分的预编译公共项的建议。 我们构建的一切都是基于QNX的,我们正在重构一组公共组件,以便在所有项目中共享。我看过Go和NuGet,但对于这样的东西来说,这似乎是一个很大的努力。
将预构建的公用程序拉入TFS团队构建的最佳方式是什么?

这样您就可以发布一个包了

然后,您的构建将使用packages.config文件aka而不是.sln文件进行nuget还原

nuget restore [<solution>|<packages.config file>]
然后我在comamand窗口中运行:

.\.nuget\nuget.exe restore  .\packages.config -PackagesDirectory .\MyPackages
并且packages.config中列出的所有包都将下载到:。\MyPackages


请注意,如果您有一个自定义的nuget存储库,则需要对其进行配置……但当您到达该存储库时,请跨越该桥。

nuget Publish。Nuget安装。这是我所知道的最常见的二进制存储库方法。谢谢。我们已经了解了NuGet,我们构建的任何东西都不会使用解决方案文件,因此它并不是一个可能的解决方案。也许值得再看一看。Nuget是关于创建二进制软件包的…所以拥有一个.sln文件不是一个预先要求。您只需要输出文件…来打包它们。另一个选项是ApacheIvy命令行……这是nuget之前唯一的选择。但如果您不熟悉java,这将比nuget的启动成本更高。
.\.nuget\nuget.exe restore  .\packages.config -PackagesDirectory .\MyPackages