🍺 BREW Explorer

← all formulae

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.

Categories

Alternatives

gvm asdf mise
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

go

GitHub topics

bash go goenv golang homebrew pyenv rbenv shims-goenv version-manager

Links

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[![PR Checks Status](https://github.com/go-nv/goenv/actions/workflows/pr_checks.yml/badge.svg)](https://github.com/go-nv/goenv/actions/workflows/pr_checks.yml)\n[![Latest Release](https://img.shields.io/github/v/release/go-nv/goenv.svg)](https://github.com/go-nv/goenv/releases/latest)\n[![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/go-nv/goenv/blob/main/LICENSE)\n[![Go](https://img.shields.io/badge/Go-%2300ADD8.svg?\u0026logo=go\u0026logoColor=white)](https://go.dev/)\n[![Bash](https://img.shields.io/badge/Bash-4EAA25?logo=gnubash\u0026logoColor=fff)](https://github.com/go-nv/goenv)\n[![Linux](https://img.shields.io/badge/Linux-FCC624?logo=linux\u0026logoColor=black)](https://github.com/go-nv/goenv)\n[![macOS](https://img.shields.io/badge/macOS-000000?logo=macos\u0026logoColor=F0F0F0)](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[![asciicast](https://asciinema.org/a/17IT3YiQ56hiJsb2iHpGHlJqj.svg)](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."
}