gpt4 book ai didi

versioning - 大型系统中的软件版本控制

转载 作者:行者123 更新时间:2023-12-02 07:26:16 25 4
gpt4 key购买 nike

我公司开发一个系统用了 10 年。该系统有 15 个几乎独立的子系统(它们可能使用相同的库或包或数据库),这些子系统在本地以不同的团队构建,还开发了一个主要的简单系统来读取子系统配置并构建带有菜单和子菜单的页面从配置(使用快捷方式)。我们公司的产品就是这个主系统的exe。

很遗憾,我们公司不使用标准版本号。现在,我们决定在公司强制执行一个标准,我找到了Semantic Versioning一个令人满意的标准,但我对我们的案例有一些疑问:子系统版本的变化将如何增加主系统版本? 通常,即使子系统发生重大变化,主系统的代码也不会受到影响。我认为主系统的变化应该影响该系统的版本号,但在这种情况下它没有意义。对于包含多个子系统的大型应用程序,是否有任何版本控制的解决方案?

最佳答案

您提供了指向 MAJOR.MINOR.PATCH 的链接,并增加了
进行不兼容的 API 更改时的主要版本,
MINOR 版本,当你以向后兼容的方式添加功能时,
进行向后兼容的错误修复时的 PATCH 版本
子系统中的任何更改都可能使主系统无法兼容:太多无法跟踪。
每个子系统都应该使用自己的版本。在主系统中,您应该对依赖项和自己的版本控制有一个概览。
您可以通过不同的方式进行管理。一种方法是使用 Maven 和 pom.xml 文件。另一种方法是使用具有不同版本的配置文件。
每个团队都可以独立开发自己的代码并分配语义版本。
也许有一天你会把共享库、包和数据库放在一个存储库中,所有团队都可以用他们自己的 pom.xml 引用它们。
你这样很灵活。您甚至可能想要制作第二个主系统(用于顶级客户或免费帐户?)并且可以更改 pom.xml 包括/排除子系统。第二个主系统将有自己的版本控制。

关于versioning - 大型系统中的软件版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28316653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com