Docs header transparent bg


bundle - Ruby Dependency Management

bundle COMMAND [--no-color] [--verbose] [ARGS]


Bundler manages an application's dependencies through its entire life across many machines systematically and repeatably.

See the bundler website for information on getting started, and Gemfile(5) for more information on the Gemfile format.



Print all output without color


Print out additional logging information

Bundle Commands

We divide bundle subcommands into primary commands and utilities.

Primary Commands

bundle install(1)

Install the gems specified by the Gemfile or Gemfile.lock

bundle update(1)

Update dependencies to their latest versions

bundle package(1)

Package the .gem files required by your application into the vendor/cache directory

bundle exec(1)

Execute a script in the context of the current bundle

bundle config(1)

Specify and read configuration options for bundler

bundle help(1)

Display detailed help for each subcommand


bundle check(1)

Determine whether the requirements for your application are installed and available to bundler

bundle show(1)

Show the source location of a particular gem in the bundle

[bundle outdated(1)][bundle-outdated]

Show all of the outdated gems in the current bundle

bundle console(1)

Start an IRB session in the context of the current bundle

bundle open(1)

Open an installed gem in the editor

[bundle lock(1)][bundle-lock]

Generate a lockfile for your dependencies

bundle viz(1)

Generate a visual representation of your dependencies

bundle init(1)

Generate a simple Gemfile, placed in the current directory

bundle gem(1)

Create a simple gem, suitable for development with bundler

bundle platform(1)

Display platform compatibility information

bundle clean(1)

Clean up unused gems in your bundler directory

bundle doctor(1)

Display warnings about common potential problems


When running a command that isn't listed in PRIMARY COMMANDS or UTILITIES, Bundler will try to find an executable on your path named bundler-<command> and execute it, passing down any extra arguments to it.

Bundler Trampolining

Bundler includes a feature called trampolining, designed to allow a single developer to work on multiple projects, each on different Bundler versions. The trampoline will infer the correct version of Bundler to use for each project and load that version instead of the version directly invoked (which is almost always the newest version installed locally).

Bundler by default will use the Bundler version in the current directory to determine the version to trampoline to, reading from the BUNDLED WITH section. However, if the BUNDLER_VERSION environment variable is set, that version will override the lockfile inference and can be used in directories without a lockfile.

Until the target version is Bundler 2 or later, BUNDLE_TRAMPOLINE_FORCE must be set for the trampoline to be used. Additionally, BUNDLE_TRAMPOLINE_DISABLE can be set to completely disable the trampoline.


These commands are obsolete and should no longer be used

  • bundle cache(1)
  • bundle list(1)