为多个Rails应用程序分离资产回购

时间:2015-03-16 14:35:25

标签: ruby-on-rails ruby assets

使用Rails 3和Ruby 2.我有以下应用程序:

  1. App A
  2. App B
  3. 现在app A和app B通过API互相交流。这是SOA。随着应用程序变得越来越大,我发现应用程序具有CSS和Javascripts,可以在应用程序中重复使用。我想将资产(CSS,JS)分离到不同的仓库(例如应用程序C),这样应用程序A和B就可以使用相同的资产仓库。

    以下是我的问题:

    1. 对于部署,应用程序C应该预编译并缩小,应用程序A和应该指向该回购。有什么选择?
    2. 对于开发,应用程序C不应该缩小,但应用程序A和B应该如何连续地与应用程序C通信以获取应用程序C中CSS / JS的所有更改?
    3. 我搜索了Google,但收不到多少结果。也许我的关键词错了。请随意列出用于此练习的术语/惯例。

      如果还有其他更好的做法,请随时提出建议。

1 个答案:

答案 0 :(得分:2)

最简单的选择可能是使用git submodule在两个项目/应用之间共享资产文件。

另一种选择是使用其中的资产文件创建自己的gem,并在两个项目中使用该gem。这需要更多的工作,但更容易管理版本(git子模块需要更多的手动步骤,以便在更改子模块存储库时保持更新)。