至于bundle install 的一点补充

在第一不良运行bundle
install之后,生成了Gemfile.lock文件,里面著录gem的切实可行版本号,按照官方文档说明,以后运行bundle
install就不见面重复依据Gemfile,而是基于lock文件来安gem,以免在新的机器中安之版与lock中不同,导致gem混乱。

实则试验步骤:

1、第一差运行bundle install,lock文件被吗 sqlite3 (1.3.11-x86-mingw32)

2、将Gemfile文件被的 gem ‘sqlite3’   改也 gem ‘sqlite3’ , ‘1.3.9’
,然后运行bundle install,lock文件中呢 sqlite3 (1.3.9-x86-mingw32)

2.1、将gem ‘sqlite3’ ,  ‘1.3.9’改回到gem ‘sqlite3’,
运行bundle install,lock文件中也 sqlite3 (1.3.9-x86-mingw32)

2.2、将gem ‘sqlite3’ ,  ‘1.3.9’改回到gem ‘sqlite3’,  ‘1.3.11’ ,
运行bundle install,lock文件中呢 sqlite3 (1.3.11-x86-mingw32)

2.3、将gem ‘sqlite3’ ,  ‘1.3.9’改回到gem ‘sqlite3’, 
‘>=1.3.9’,运行bundle
install,lock文件中也 sqlite3 (1.3.9-x86-mingw32),并从未提升到1.3.11

2.4、将gem ‘sqlite3’ ,  ‘1.3.9’改回到gem ‘sqlite3’, 
‘>=1.3.10’ , 运行bundle
install,lock文件被为 sqlite3 (1.3.11-x86-mingw32)

 

结论:

1 可能用Gemfile中无标注具体版本的gem改吧具体版本,运行bundle
install,会改lock文件,反过来就不再修改了,另外2.3和2.4底情况万分意外,不好讲,个人觉得2.4未应该更新lock文件

2 最好的尽是以Gemfile中形容清具体版本,如果以后需要改变,每次用bundle
update
XXgem更改一个gem版本,充分测试后更转移第二独gem的版;一定将lock文件纳入版本管理控制。

 

网站地图xml地图