【发布时间】:2013-11-29 15:02:51
【问题描述】:
我正在寻找 nuget 以改进开发过程中依赖项(内部和第三方)的自动处理。
只要你通过 CI Build Server 开发,一切都好:
- 获取 A 和 B 的最新源代码,其中 B 依赖于 A
- 修复 A 中的错误
- 构建 A
- 检查源代码管理
- CI 构建服务器已启动
- 新的 nuget 包已创建并放置在公司存储库中
- 构建 B(将获得更新的 A 包)
- 运行 B 以验证 A 中的错误是否已修复 n.重复n次
但是,我想知道是否可以作为单个开发人员在本地工作,而不必等待 CI 构建服务器生成新包?
Nuget 有一个功能包还原,它将在构建时自动下载所有依赖项。您还可以列出包还原应查找包的存储库顺序。
如果工作流程可以变成:
- 获取 A 和 B 的最新源代码,其中 B 依赖于 A
- 修复 A 中的错误
- 构建 A
- (构建创建本地 nuget 包)
- 运行 B 以测试 A 中的(已解决)错误(现在应该使用我们的本地 nuget 包,而不是本地存储库)
- ...重复n次
- 检查源代码管理
- CI 构建服务器已启动
- 在公司存储库中创建了新的 nuget 包
这是否可以使用 Visual Studio、MSBuild、CI 构建服务器和 nuget?我对在本地开发的同时制作本地包特别感兴趣。
请注意,我有本机项目,尽管除了构建后生成 nuget 包外,这将是一个我希望适用于 C# 和 C++ 项目的工作流。
【问题讨论】:
-
这里有同样的问题,找到了一个可行的解决方案,但 Nuget 不能很好地使用它,所以 nop。回到手动挂钩/取消挂钩依赖项。对少数人来说效果很好,但我们有数百人,这让这些受赠者对构建系统和它的主人进行了一次程序员的音叉革命!如果有的话,我会继续寻找并在这里发布我的发现(我自己会问的!)
-
@Newtopian:很酷,请让我们保持最新状态:) 也许您可以详细说明您的尝试,这样我们就不必这样做了? :)
-
我会为没有 CI 服务器的本地开发这样做:stackoverflow.com/a/63485994/1662819
标签: automation continuous-integration nuget nuget-package-restore