相关疑难解决方法(0)

如何自动将NuGet包更新到最新的可用版本

我有两个存储库,我需要从另一个存储库中编译库.我不想手动检查repo1的更新库,并复制/提交到repo2,因为这是愚蠢的.我已经在每个必要库的构建上创建了repo1构建NuGet包,并将它们发布到内部NuGet服务器.然后repo2中的项目可以引用这些NuGet包,一切都(几乎)正常工作.

最后一个障碍是自动更新repo2项目中的NuGet包.由于我不知道repo1中的库何时会更新(我不应该),我想在repo2中的项目上进行某种构建事件,它将自动更新NuGet包.我目前只有一个预构建事件,但由于packages.config文件包含已安装软件包的版本号,我不断在repo2中获取修改过的文件(packages.config文件得到更新).

所以我的问题是:什么是自动升级NuGet包而不破坏我的repo2 VCS​​的好方法?ScottGu说这里(在评论中)可以将软件包升级挂钩到CI版本,但他没有说明我当前的解决方案是如何混乱的.有没有我错过的内置方式?或者更好的解决方案?

continuous-integration nuget nuget-package

39
推荐指数
1
解决办法
2万
查看次数

如何自动更新nuget包依赖?

我有两个包\项目"A"和"B".其中"B"取决于"A"并将其用作参考.当我在TFS中的构建过程构建"A"时,它正在从nuspec创建一个nuget包并给它一个新版本并将它放在我的TFS私有包上.

我的问题是在每个"B"构建中创建一个定义良好的"B"包.在"B.nuspec"文件中,我编写了当前"A"包的版本:

<dependencies>
    <group targetFramework=".NETFramework4.5">
        <dependency id="A" version="[1.0.0.3]" />
    </group>
</dependencies>
Run Code Online (Sandbox Code Playgroud)

当我正在创建一个新的"A"软件包时,我正在更新"B"项目以使用新的"A"版本 - >这也会按预期更新"packages.config"和最新的"A"版本.问题是"B"的构建过程从具有旧"A"依赖性的nuspec文件创建"B"包.我希望它使用"packages.config"中的"A"版本.

有自动方式吗?(没有手动更改nuspec文件的每个新版本的"A")我想创建一个小的"Post-Build"进程,从B->"packages.config"读取版本并将其写入"B.nuspec" "A"依赖关系部分中的文件.TFS是否以更简单的方式支持它?

tfs nuget nuget-package nuspec nuget-server

7
推荐指数
1
解决办法
4122
查看次数