在Gemfile中指定第三方库的确切版本与使用Gemfile.lock有什么区别吗?
如果我在Gemfile中使用确切的版本,它是否与分发Gemfile.lock相同?
发布于 2016-10-17 20:25:06
不,精确指定的Gemfile和使用Gemfile.lock并不相同。
您的Gemfile可能包括与特定版本一起使用的所有宝石。但是,Gemfile.lock还将包含所有宝石,它们都是您使用的gem的依赖项。这意味着一个典型的Gemfile.lock在Gemfile时将包含更多的宝石。
此外:您的Gemfile可能有不兼容的gem或gem版本。Gemfile.lock由bundler生成,表示一组彼此兼容的gem版本。如果bundler不能满足所有必需的依赖项,那么它就不会生成Gemfile.lock。
也就是说:你只需要在你的Gemfile中插入版本,这是因为你的应用程序的版本要求。让邦德勒找到一个有效的组合,并将Gemfile.lock检查到版本控制系统中。
发布于 2021-10-13 20:11:53
如果我将Gemfile.lock重命名为Gemfile,bundle install将失败,语法错误。
https://stackoverflow.com/questions/40094784
复制相似问题