Skip to content
CocoaPods version manager
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Add a pod shim Jan 5, 2016
libexec Ensure that system pod doesn't cause infinite loop Jan 26, 2016
LICENSE Add initial podenv command Jan 5, 2016 Env variable is COCOAPODS_VERSION Jan 26, 2016

Pod Version Manager

podenv allows you to easily install, and switch between multiple versions of CocoaPods, without managing Ruby.

podenv screenshot

podenv allows you to:

  • Change the global CocoaPods version, per user.
  • Set a per-project CocoaPods version.
  • Allows you to override the CocoaPods version with an environmental variable.


Via Homebrew

You can install podenv using the Homebrew package manager.

$ brew install kylef/formulae/podenv

Via a Git clone

  1. Check out podenv, we recommend ~/.podenv (but it can be installed elsewhere as long as you set PODENV_ROOT).

    $ git clone ~/.podenv
  2. Configure environment.

    For Bash:

    $ echo 'export PATH="$HOME/.podenv/bin:$PATH"' >> ~/.bash_profile

    For ZSH:

    $ echo 'export PATH="$HOME/.podenv/bin:$PATH"' >> ~/.zshenv

    For Fish:

    $ echo 'setenv PATH "$HOME/.podenv/bin" $PATH' >> ~/.config/fish/
  3. Restart your shell so the changes take effect.


Getting Started

Once you've installed podenv, you can install a specific version of CocoaPods using the install command:

$ podenv install 1.0.0.beta.2

Alternatively, you can install the version specified in the local Podfile.lock file using the following:

$ podenv install

Then you can continue to use CocoaPods as you normally would, podenv which automatically switch to the correct version locked from your Podfile.lock when you run it.

$ pod --version



Displays the current active CocoaPods version and why it was chosen.

$ podenv version
0.39.0 (set by Podfile.lock)

Lists all installed CocoaPods versions, showing an asterisk next to the currently active version.

$ podenv versions
* 0.39.0 (set by Podfile.lock)

Sets the global version of CocoaPods to be used by writing to the ~/.podenv/version file. This version can be overridden by application-specific Podfilefile, or by setting the COCOAPODS_VERSION environment variable.

$ podenv global 1.0.0.beta.2
$ podenv global

Installs a version of CocoaPods.

$ podenv install 1.0.0.beta.2
Listing all available versions
$ podenv install --list
Installing Unreleased Versions

It's also possible to install directly from a branch found on the CocoaPods repository:

$ podenv install --branch 0.39-stable

The version inside podenv will be the branch name, for example 0.39-stable.

You can explicitly use this version via the environ variable, for example:

$ env COCOAPODSPOD_VERSION=0.39-stable pod

NOTE: You may also use --repo to install from a different GitHub remote.


Uninstalls a specific CocoaPods version.

$ podenv uninstall 1.0.0.beta.2

Runs an executable with the selected CocoaPods version. For example, this can be used to install CocoaPods plugins.

$ podenv exec gem install cocoapods-bugsnag
You can’t perform that action at this time.