我们有一个 jRuby 前端(使用 Git 维护)与一个 Scala 后端(使用 Artifactory 维护)集成。后端 JAR 文件位于/lib/jars
.
到目前为止,每当更新 JAR 文件时,我们都会下载该 JAR 文件并将其复制到/lib/jars
. 我们不会将 JAR 文件添加到 Git(空间、速度等),因此我们无法跟踪哪个 JAR 文件与特定的前端提交一起使用。
我们想实现如下,
- 前端 v1.1,后端 v1
- v1.1 的前端,v2 的后端
- 前端现在在 v1.2(强制用户更新 JAR 文件),后端在 v2
- 前端进入 v2.2,后端进入 v2
- v2.2 的前端,v3 的后端
- 前端现在在 v2.3(强制用户更新 JAR 文件),后端在 v3
每当后端更新时,有没有办法告诉前端开发者后端已经更新,需要做类似“git pull”之类的操作来获取后端开发者推送到 Artifactory 中的最新 JAR 文件?
可能的解决方案
===========================
后端开发者构建开发者并推送到 Artifactory
该构建过程还会更新前端应用程序中 config/jars.rb 中 JAR 文件的版本号。
如果
config/jars.rb
.
===========================
** 最终,问题在于跟踪特定前端提交中的 JAR 文件版本,而不将该 JAR 文件存储在前端存储库中(因为它已经存在于 Artifactory 中)**
Git 子模块在这种情况下是否有效?有什么建议么?