Joh*_*ohn 5 matlab simulink dependency-management
在整个团队中处理项目并且项目依赖于不同的模型和库时,在Simulink项目中管理依赖项的最佳实践是什么?
一个并行的例子是使用Gradle构建应用程序并声明项目的依赖关系,包括所需的版本号.成绩将解析并下载构建项目所需的版本.
例如,以下声明依赖于版本2.1 library和版本1.0以上some-library,以便下载和使用可用的最新版本1.x(1.0,1.1,1.2 ......).
dependencies {
compile("com.example:library:2.1")
compile("com.example:some-library:1.+")
}
Run Code Online (Sandbox Code Playgroud)
Simulink的文档(以及此处的清单)似乎是在讨论具有版本号的项目中的模型.它似乎没有提到导入项目的库.仅在单个项目中使用的模型都可以包含在整个项目中,但是如果(例如)在适用的单独项目或库(或项目中定义的库)中定义了(例如)通用S函数会发生什么情况跨多个项目?此要求的目的是帮助支持由持续集成服务器(如Jenkins)触发的自动构建过程.
我对使用Github Flow git分支策略轻松支持依赖项管理和自动依赖项解析的工作流感兴趣.
小智 0
我在这个问题上花了很多时间。最后我在网上没有找到合适的解决方案,但我想分享一下我们现在使用的、满足我们需求的工作流程。
简而言之:我们使用git submodules创建了自己的依赖管理。
假设: 事实上,它更多的是持久依赖项的版本管理,而不是提供动态添加新的或删除旧的包或库的可能性。这也有效,但需要将 git 子模块添加到主 git 存储库或从主 git 存储库中删除。
目标:
我们如何做(示例):
优点:
我认为只要存储库不会变得太大,这种方法就有效,因为您不仅获取所需的版本,还获取整个版本历史记录。