我慢慢地积累了一些特定样式和功能的 helpers 和 css,希望在不同的项目中重用,并做到集中统一更新和维护。
目前只能想到创建 gem,但通过 gem 只是维护 helper 和 css 又好像有点小题大做。不知道有没有更简单的办法?
那就用 git submodule :www.kafeitu.me/git/2012/03/27/git-submodule.html
如果都是 ruby 项目,复用代码用 git submodule 感觉不太有必要,我的做法还是使用 gem,不过要注意根据功能点拆分或者合并,这个考验对业务和组件的理解能力
用软连接,ln -s
ln -s
#3 楼 @ywjno 用软连接就对部署方式形成依赖了,不划算
Gem 是正解。
我最终还是用 gem 解决的。目前看还可以,就是在开发调试的时候稍微麻烦了点。
#6 楼 @felixding 做成 gem 放在同级项目旁边应该还好用啊, 就是 Gemfile 里用 gem 'some', path: 'path'这种格式,挺好,不一定要打成包的。
@felixding css/js/static images 可以考虑放在 vendor 下,用 git 管理,然后在 assets 中引用。看看 (http://twitter.github.com/bower/),管理静态资源的。对于 helper,都是 ruby 代码,可以放在 lib/extensions 下。然后在 initializer 目录里初始化一下:
Dir.glob('lib/extensions/*').each { |f| require f }
如果是和业务无关的功能我会写成 Gem
#7 楼 @hhuai 业务有关,但有重用到应该也可以吧。