使用以下两种方式有什么确切的区别?
1. 使用 "gem install [gemname]" 2. 将 gem 名称和版本添加到 GemFile 中并运行 "bundle install"
1. 使用 "gem install [gemname]" 2. 将 gem 名称和版本添加到 GemFile 中并运行 "bundle install"
RubyGems(红宝石宝石库)类似于 Ruby 的包管理器。通过它,您可以安装自包含的库以用于应用程序开发。当您使用 gem install gemname
命令时,您将该宝石库安装到当前正在进行开发的计算机上。
Bundler(宝石库捆绑工具)是一款用于管理应用程序所依赖的宝石库的工具。当您创建 Gemfile 时,会列出应用程序需要的各种宝石库及其版本号。这样,当您将应用程序部署到新位置(例如,推送到 Heroku)时,您只需轻松确保应用程序具备所需的所有宝石库依赖关系。
运行 bundle install
命令将获取您 Gemfile 中列出的所有必需宝石库,并安装它们(如果它们尚未安装),就像为您的应用程序单独使用 gem install
命令安装每个宝石库一样。
gem install
安装所有 4example 15 个 Gem,是否与将它们放入 Gemfile 并运行bundle install
相同?我不这么认为,因为bundle install
会花费太多时间,并且经常会出现许多错误,而gem install
则可以更快地安装 Gems,通常没有错误! - user2078158gem install
慢,因为缺乏其他细节,但是Bundler会自动检查并安装所有依赖的gem的新版本(即使您没有明确声明,但是这些gem是您声明的gem的依赖项),这可能使其比gem install
慢。 - rayashmanjrgem install
,不会使应用程序工作吗?! - user2078158gem install
会尝试获取依赖项(如果我没记错的话,会提示或使用--include-dependencies
)。Bundler 只是让这个过程更容易。理想情况下,在将应用程序移植到新环境后,键入bundle install
比为所有 gem 进行gem install
更容易。 - rayashmanjr