goenv
brew install goenv
v3.1.4
MIT
Bash-based Go version manager following the pyenv/rbenv model for installing and switching between Go releases.
Why you might care
Install multiple Go versions side-by-side and switch between them per-project or globally without manual PATH manipulation. Follows the established pyenv/rbenv pattern, so it's familiar if you already manage Ruby or Python versions that way. Auto-updates available Go releases daily.
2.1k
30-day installs · #945
4.3k
90-day · #1173
15.5k
365-day · #1195
2.5k
★ GitHub stars · updated 11d ago
Build dependencies
GitHub topics
bash
go
goenv
golang
homebrew
pyenv
rbenv
shims-goenv
version-manager
Links
- https://github.com/go-nv/goenv
- GitHub: go-nv/goenv
- Brew formula source: Formula/g/goenv.rb
Caveats
If you are upgrading from goenv v2, you may need to remove the stale shim:
rm -f "${GOENV_ROOT:-$HOME/.goenv}/shims/goenv"
Blurb generated by claude-haiku-4-5 on today.
Raw metadata
{
"aliases": [
"goenv@3"
],
"alternatives": [
"gvm",
"asdf",
"mise"
],
"build_dependencies": [
"go"
],
"categories": [
"version-control",
"language-runtime"
],
"caveats": "If you are upgrading from goenv v2, you may need to remove the stale shim:\n rm -f \"${GOENV_ROOT:-$HOME/.goenv}/shims/goenv\"\n",
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Go version management",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:38:17+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "goenv",
"github_default_branch": "master",
"github_last_commit_at": "2026-06-09T18:36:31Z",
"github_readme_excerpt": "# Go Version Management: goenv\n\n[](https://github.com/go-nv/goenv/actions/workflows/pr_checks.yml)\n[](https://github.com/go-nv/goenv/releases/latest)\n[](https://github.com/go-nv/goenv/blob/main/LICENSE)\n[](https://go.dev/)\n[](https://github.com/go-nv/goenv)\n[](https://github.com/go-nv/goenv)\n[](https://github.com/go-nv/goenv)\n\n\u003e **\ud83d\udce2 Version Note:** goenv v3 is now the current stable version. v2 remains available as `goenv@2` for legacy support. See [Version Support Policy](#version-support-policy) below.\n\ngoenv aims to be as simple as possible and follow the already established\nsuccessful version management model of [pyenv](https://github.com/pyenv/pyenv) and [rbenv](https://github.com/rbenv/rbenv).\n\nNew go versions are added automatically on a daily CRON schedule.\n\nThis project was cloned from [pyenv](https://github.com/pyenv/pyenv) and modified for Go.\n\n[](https://asciinema.org/a/17IT3YiQ56hiJsb2iHpGHlJqj)\n\n### goenv _does..._\n\n- Let you **change the global Go version** on a per-user basis.\n- Provide support for **per-project Go versions**.\n- Allow you to **override the Go version** with an environment\n variable.\n- Search commands from **multiple versions of Go at a time**.\n\n### goenv compared to others:\n\n- https://github.com/crsmithdev/goenv depends on Go,\n- https://github.com/moovweb/gvm is a different approach to the problem that\u0027s modeled after `nvm`.\n `goenv` is m",
"github_repo": "go-nv/goenv",
"github_stars": 2518,
"github_topics": [
"bash",
"go",
"goenv",
"golang",
"homebrew",
"pyenv",
"rbenv",
"shims-goenv",
"version-manager"
],
"homepage": "https://github.com/go-nv/goenv",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 2144,
"installs_365d": 15522,
"installs_90d": 4348,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "MIT",
"llm_generated_at": "2026-06-20T23:48:02+00:00",
"llm_model": "claude-haiku-4-5",
"name": "goenv",
"oldnames": [],
"one_liner": "Bash-based Go version manager following the pyenv/rbenv model for installing and switching between Go releases.",
"optional_dependencies": [],
"rank_30d": 945,
"rank_365d": 1195,
"rank_90d": 1173,
"raw_hash": "46d0f5b04d32ba8a",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/g/goenv.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": null,
"version_stable": "3.1.4",
"versioned_formulae": [
"goenv@2"
],
"why_use_this": "Install multiple Go versions side-by-side and switch between them per-project or globally without manual PATH manipulation. Follows the established pyenv/rbenv pattern, so it\u0027s familiar if you already manage Ruby or Python versions that way. Auto-updates available Go releases daily."
}