ruby – 直接修改Gemfile.lock会怎么样?

前端之家收集整理的这篇文章主要介绍了ruby – 直接修改Gemfile.lock会怎么样?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
从第二次捆绑安装执行以来,只要Gemfile没有改变,从Gemfile.lock加载依赖关系.

但是我想知道如何检测这两个文件之间的变化.

例如,如果我直接在Gemfile.lock中添加一个新的依赖关系,而不将其添加到Gemfile中(与Gemfile.lock从Gemfile自动生成的最佳做法相反),bundle安装是否会将Gemfile改为?

事实上,捆绑安装过程是否比较了整个Gemfile和Gemfile.lock树以检测更改?

如果是,即使我直接向Gemfile.lock添加依赖关系,Gemfile将被检测为已更改(因为不同),并将重新擦除Gemfile.lock(从而丢失添加的依赖关系…)

从第二次发布以来,捆绑安装的过程是什么?

更清楚的是,我的问题是:

是否仅基于Gemfile进行更改?这意味着捆绑包将保留每个捆绑包的Gemfile快照安装执行数N,并将其与捆绑安装执行N 1进行比较.

或者在bundler内存中不创建快照,并且bundler与Gemfile.lock进行比较,以便每次检测Gemfile是否必须被视为已更改.

解决方法

如果您编辑Gemfile.lock,则Rails应用程序将依赖于另一个版本的宝石…在这种情况下,您的gem版本系统的完整性将被破坏.直接编辑Gemfile.lock文件是一个非常糟糕的主意.

请,成为一个好人,只与Gemfile交易

猜你在找的Ruby相关文章