我想知道是否可以使用nuget在版本控制中只存储对所需包的引用(只存储package.config,忽略包文件夹)。
有没有办法让nuget下载(重新)各种package.config文件中引用的所有包?或者可以放入构建脚本中的类似内容。
更新:
似乎我不是唯一一个请求这个特性的人:See this work item (感谢PHeiberg的提示)
更新2:
NuGet现在内置了这个特性。详情请参见Using NuGet without committing packages to source control。剩下的就是将包目录添加到.gitignore或与您的VCS等效的某个目录中(如果您将其放在存储库的根目录中并使用git,/packages/将完成此任务)。
发布于 2011-08-23 16:00:16
我刚刚发现了NuGetPowerTools:https://github.com/davidfowl/NuGetPowerTools
另请参阅:http://blog.davidebbo.com/2011/08/easy-way-to-set-up-nuget-to-restore.html
更新: NuGet 1.6现在支持包还原:http://docs.nuget.org/docs/release-notes/nuget-1.6
发布于 2010-10-19 03:13:31
我不知道你的第一个问题。
至于让CI服务器自动更新包,理论上是可行的。您可以链接"List-Package -Installed“和"Update- package”命令,并将每个包更新为最新版本。有关更多详细信息,请参阅command reference。
斯科特·格思里says this的主题:
“您可以将命令行选项与CI解决方案集成,并在构建/CI过程中显式执行update- part命令以下载更新。坦率地说,我不确定这对于我们正在讨论的场景是否有意义,因为通常情况下,您希望开发人员在将核心运行时依赖项更新到新版本之前做出决定。NuPack的默认模型是让开发人员使用NuPack安装库--NuPack会自动将包和依赖项签入到源代码管理中。这样一来,另一个开发人员(或CI服务器)就不需要再次使用NuPack了--他们只需同步源代码和构建即可。但正如我之前提到的-如果您想明确地将更新作为CI流程的一部分,您可以这样做。
编辑:
在你的评论之后,我明白了你想要实现的目标。我在关于这个问题的NuPack讨论列表中找到了this long thread。解决方案显然不会是v1的一部分。您选择的CI中的自定义构建任务和存储库中的配置是我看到的唯一解决方案。请将您的调查结果反馈给我们。你引起了我的兴趣。
发布于 2011-04-28 11:48:14
目前在Phil Haack's blog上有一个关于这个问题的讨论,他正在询问如何解决这个问题的反馈。
https://stackoverflow.com/questions/3950166
复制相似问题