【问题标题】:How to track version changes to dependent components/libraries?如何跟踪依赖组件/库的版本更改?
【发布时间】:2010-12-06 17:45:36
【问题描述】:

我们有一个项目,其中包含多个独立开发的组件。然而,我们有许多版本都被命名为具有不同时间表的不同产品。我们希望在组件有新版本(可能与错误修复相关)时立即获得反馈,因此依赖于该版本的所有产品也将得到更新。

A -> v1.0 (released 10.10.2009)
B -> v1.0 (depending on A, released on 11.10.2009)
A -> v1.1 (released 12.10.2009) ---> B must be updated

当然这只是一个简单的例子。应该有专门针对这种情况的项目,但我找不到。您如何处理此类情况?首选(简单但功能强大)的方法是什么?

【问题讨论】:

  • 你的编程语言是什么? C、C++、Java、C#、VB、...?
  • 确实有专门针对这种情况的项目。您正在开发的语言是选择路径的关键因素。 google 的东西:maven、ivy、nanny、nuget、“依赖管理”
  • 我认为答案取决于他所说的“即时反馈”是什么意思。如果他们只想立即将其包含在构建中,那么像 maven 或 ivy 这样的依赖管理是一种方法。但是,如果这应该只是例如一封电子邮件,然后是一些手动升级操作 + 测试,依赖管理会有所帮助,但需要更多的脚本来实现目标。

标签: versioning libraries release-management dependency-management


【解决方案1】:

这在很大程度上取决于您的项目(组件)构建设置。我假设您为每个带有 CI 的组件都有一个存储库,这是一个简单的解决方案

  • 使用通常由 Hudson/Jenkins 提供的选项来签出和构建组件(google 用于 hudson/jenkins 插件)
  • 在 CI 中指定依赖项
  • 每次退房后跟踪更改
  • 如果 X 有新代码(提交),他们会更新 Y。这在 CI (Hundson/Jenkins) 中非常容易

我在类似的场景中使用过 CI。 Jenkins 有许多插件(开源)来查找代码更改、触发通知/其他构建和构建依赖项

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-06
    • 2012-12-28
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 2021-05-16
    • 2013-01-09
    • 1970-01-01
    相关资源
    最近更新 更多