2013-05-10 199 views
0

我正在使用myget构建服务和github Web挂钩来构建我的nuget包,每次推送到github。建立nuget依赖关系构建

github repo在项目级别,所以package文件夹(在sln级别)不会被推送。

所以我的构建失败,因为它没有依赖关系。这里最好的做法是什么?我想在构建过程中用nuget引入依赖关系。这是可能的与myget,如果是的话,我怎么能设置它。我已经看过包恢复,但也创建sln级别的配置,所以我不认为它可以帮助我。

回答

0

您可以挂接到MyGet使用自己的构建脚本构建服务,如文档中解释说:http://docs.myget.org/docs/reference/build-services

然后您可以利用的NuGet的自己恢复包: http://docs.myget.org/docs/how-to/make-use-of-nuget-within-your-build-scripts

实问题在于您的项目正在引用源存储库根目录之外的库。我建议你尊重在你的仓库以下目录结构的默认约定:

$(SolutionDir) = repository root 
    \ProjectDir 

您可以包括在解决方案目录项目具体的解决方案(并有计划在自己的子目录) ,或者在解决方案目录中使用构建脚本来恢复$(SolutionDir)\ Packages文件夹中的软件包(只要它位于签出目录内,就可以实时创建它,并且可以在packages.config上调用nuget.exe install )。