Command Palette

Search for a command to run...

position in category
#12

Version manager for Go that lets you install and switch between multiple Go versions. Mirrors the familiar pyenv and rbenv model, with per-user global defaults and per-project overrides.

Forked from pyenv and adapted for Go. Unlike alternatives such as GVM, which follows the nvm pattern, goenv keeps the shim-based design that developers already know from Python and Ruby ecosystems. New Go releases are picked up automatically on a daily schedule.

Key capabilities:

  • Global Go version per user with simple commands
  • Per-project version via .go-version file for directory-specific defaults
  • Environment variable override for one-off runs or scripts
  • Shims that select the right Go binary from multiple installed versions
  • Installation and upgrade without requiring an existing Go toolchain

Teams use goenv to run different Go versions across projects, test against upcoming releases, or pin CI pipelines to specific versions. Integrates cleanly with build systems like AWS CodeBuild via simple git pull during pre-build.

GitHub Repositories
51
-12.1%
Trending down this week
Removed in 7 repos