Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/go-nv/goenv
:blue_car: Like pyenv and rbenv, but for Go.
https://github.com/go-nv/goenv
bash go goenv golang homebrew pyenv rbenv shims-goenv version-manager
Last synced: 26 days ago
JSON representation
:blue_car: Like pyenv and rbenv, but for Go.
- Host: GitHub
- URL: https://github.com/go-nv/goenv
- Owner: go-nv
- License: mit
- Created: 2016-04-17T09:46:37.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-04-04T14:27:11.000Z (7 months ago)
- Last Synced: 2024-04-13T20:10:43.447Z (7 months ago)
- Topics: bash, go, goenv, golang, homebrew, pyenv, rbenv, shims-goenv, version-manager
- Language: Shell
- Homepage: https://github.com/go-nv/goenv
- Size: 2.72 MB
- Stars: 1,927
- Watchers: 21
- Forks: 246
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Go Version Management: goenv
[![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)
[![Latest Release](https://img.shields.io/github/v/release/go-nv/goenv.svg)](https://github.com/go-nv/goenv/releases/latest)
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/go-nv/goenv/blob/main/LICENSE)
[![Go](https://img.shields.io/badge/Go-%2300ADD8.svg?&logo=go&logoColor=white)](https://go.dev/)
[![Bash](https://img.shields.io/badge/Bash-4EAA25?logo=gnubash&logoColor=fff)](https://github.com/go-nv/goenv)
[![Linux](https://img.shields.io/badge/Linux-FCC624?logo=linux&logoColor=black)](https://github.com/go-nv/goenv)
[![macOS](https://img.shields.io/badge/macOS-000000?logo=macos&logoColor=F0F0F0)](https://github.com/go-nv/goenv)goenv aims to be as simple as possible and follow the already established
successful version management model of [pyenv](https://github.com/pyenv/pyenv) and [rbenv](https://github.com/rbenv/rbenv).New go versions are added automatically on a daily CRON schedule.
This project was cloned from [pyenv](https://github.com/pyenv/pyenv) and modified for Go.
[![asciicast](https://asciinema.org/a/17IT3YiQ56hiJsb2iHpGHlJqj.svg)](https://asciinema.org/a/17IT3YiQ56hiJsb2iHpGHlJqj)
### goenv _does..._
- Let you **change the global Go version** on a per-user basis.
- Provide support for **per-project Go versions**.
- Allow you to **override the Go version** with an environment
variable.
- Search commands from **multiple versions of Go at a time**.### goenv compared to others:
- https://github.com/crsmithdev/goenv depends on Go,
- https://github.com/moovweb/gvm is a different approach to the problem that's modeled after `nvm`.
`goenv` is more simplified.---
### Hints
#### AWS CodeBuild
The following snippet can be inserted in your buildspec.yml (or buildspec definition) for AWS CodeBuild. It's recommended to do this during the `pre_build` phase.
**Side Note:** if you use the below steps, please unset your golang version in the buildspec and run the installer manually.```yaml
- BUILD_DIR=$PWD
- cd /root/.goenv/plugins/go-build/../.. && git pull && cd -
- cd $BUILD_DIR
```---
## Links
- **[How It Works](./HOW_IT_WORKS.md)**
- **[Installation](./INSTALL.md)**
- **[Command Reference](./COMMANDS.md)**
- **[Environment variables](./ENVIRONMENT_VARIABLES.md)**
- **[Contributing](./CONTRIBUTING.md)**
- **[Code-of-Conduct](./CODE_OF_CONDUCT.md)**