我应该何时更新项目的NuGet包?

jul*_*gon 7 updates nuget nuget-package

我知道NuGet包更新过程不是自动的,原因很简单(新版本可能会破坏您的代码或导致无法预料的问题),但随后它将更新所有包的责任转移给开发人员自己.我们究竟应该更新给定项目的NuGet包吗?有关此过程的一些指导原则吗?

在我们当前的项目中,这或多或少是随意的:每当我记得检查更新时,我都会更新软件包,最好是在sprint开始时更新,这样如果新版本出现问题,我们就可以修复它们或者回滚到以前版本的违规包.大多数时候,我是唯一一个担心这些问题的开发人员,但我觉得由于性能原因和新功能可以使我们的工作更轻松,因此始终保持最新状态是很有价值的.

Jua*_*uan 10

好吧,只要你能应付它,你就应该更新.

因此,您需要仔细考虑如果已经投入生产,应用程序可能会对您的应用程序造成的回归更新,或者您需要进行的额外测试以验证一切似乎按预期工作.

通常更新到较新的次要版本不应该引起太多问题,但是你总是有风险.查看较新版本的发行说明可以帮助您准备好对更新的期望.

总而言之,当你可以应对它时更新,如果你的测试人员大喊大叫,如果系统突然退回而没有他们甚至知道它即将来临:)

  • 很棒的答案!另外,我建议您使用干净的工作副本(所有更改已提交或创建新分支).这样,如果更新导致任何问题,您始终可以还原.版本控制#ftw! (8认同)
  • 同意这里的答案。作为补充,还要记住不保持核心更新的风险。根据软件包的数量和复杂性,如果不更新,您可能最终会进入技术部门。例如,不久前 Xamarin.Forms nuget 4.5 包含对已弃用的 iOS 组件的引用,Apple 宣布拒绝包含此已弃用组件的新版本。在 Xamarin.Forms 4.6 中,此引用已被删除,从而解决了弃用问题。 (2认同)