使用设计没有gem,我可以简单地复制文件吗?
我可以简单地将设计应用程序和lib(以及gem?)文件夹复制到我各自的项目文件夹中,让它们像我使用gem一样工作吗? 我想这样做,以便我可以真正看到所有代码,可能做一些自定义,并避免在我的IDE中出现一些“无法找到”的错误。
这是一个坏主意吗? 如果这是可行的,我只需要删除gem并复制必要的文件,或者我需要“撤消”gem所做的事情。 这会不会随着更新而产生问题?
最后, 当我没有项目中的所有代码时 , 究竟是如何设计的? 它在我离线时有效,所以代码只是存储在一些秘密的隐形文件中吗? 有些gem需要互联网连接来检索它们的function,或者只是在项目中复制和使用任何gem而不在gem文件中声明它。
见http://bundler.io/v1.5/git.html
Bundler还允许您在本地使用git存储库而不是使用远程版本。 这可以通过设置本地覆盖来实现:
bundle config local.GEM_NAME /path/to/local/git/repository
也
http://ryanbigg.com/2013/08/bundler-local-paths/
“ Bundler有一个鲜为人知的特性,允许你在本地开发时使用本地Git存储库,在部署时使用远程Git存储库。这个function意味着你不再需要不断地在本地路径之间切换: ”
gem 'spree', :path => "~/Projects/gems/spree"
和远程路径:
gem 'spree', :github => 'spree/spree', :branch => 'master'
这是否可行,简答:是的。 这是一个坏主意吗? 非也! 实际上,代码不在您的项目中,但是当您安装gem时,其所有内容都将存储在本地计算机的某个位置。 因此,一旦下载,您就不必在线使用它。 好吧,尽管它并不常见(并且不推荐),但您可以将gem的存储库克隆到项目中并在项目的Gemfile中设置路径。