Change go versions with ease. Sorry, Billy.
- Everything chruby has, but, you know, for go.
- Which means it sets
$GOROOT, mostly. - Obviously this means a ton of credit goes to @postmodern for making chruby.
- Which means it sets
- Automatic installation of missing go versions.
Grab the latest release from GitHub and put it somewhere.
Then source $CHGO_ROOT/share/chgo/chgo.sh in your configuration, somewhere ($CHGO_ROOT is wherever you put the release at).
After installation, source the auto-switcher:
source $CHGO_ROOT/share/chgo/auto.sh
It'll look for .go-version files in your projects (or any parent directory) and automatically switch versions for you. We also support setting a global $CHGO_ROOT/version file for a default version to activate.
By default, if you request to chgo to an uninstalled version, chgo will try and install it for you (using the precompiled binaries from the official downloads site).
If you find this behavior undesirable, you can disable it by setting:
CHGO_SKIP_AUTO_INSTALL=1
rm -rf $CHGO_ROOT