rub*_*nce 4 ruby gem rubygems bundler ruby-on-rails-3
我试图将3 Rails应用程序的常用功能移动到gem中.我创建了gem,在本地测试它,并将移动到私有存储库.
所以,现在我担心如果我在gem中的代码有变化,如何处理大小写.我是否需要更改gem的版本,如果我想更新gem bundle update mygem,或者Bundler会在执行时检测git repo的提交哈希值的变化bundle update mygem?
由于您Gemfile将在私有git存储库中引用您的gem,然后为了让您的应用程序在您的gem中获取任何新的更改,您需要这样做bundle update gemname.纯粹而简单.如果您不这样做,bundle将不会接收更改.
Bundler使用锁定在Gemfile.lock文件中的gem版本,以便在应用程序中启动/使用它.您的版本信息Gemfile.lock仅在您更新时才会更新bundle update.否则它被锁定(aka Gemfile.lock)并且正在使用任何被锁定的版本.
顺便说一句,在一个私人的Git仓库引用宝石可以有很多选择(:branch,:tag等等),但是这是无关紧要的.锁定将发生在什么地方.
我希望这个解释捆绑器如何工作.
每次进行更改时,您无需更改 gem 内的版本。使用 git gems 时,Gemfile.lock锁定提交哈希而不是版本号。您根本不需要指定版本。
当您运行bundle update mygem并且mygem是 git gem 时,它会将锁定的提交哈希更新为您指定的分支(如果master您未指定分支,则为最新的可用哈希)。
| 归档时间: |
|
| 查看次数: |
1240 次 |
| 最近记录: |