To briefly explain what
Goenv is, I will assume
you have previously worked with Python. Basically it’s what
Virtualenv is for Python. Goenv (and it’s wrapper goof) creates
a folder for a new project and set the $GOPATH
env variable to that
folder path. At this point every time you do go get, the libraries
will be installed in that specific $GOPATH
.
It’s very important to use separate $GOPATH
for each project, because
this allow us to use different library versions for each project and
avoid version conflicts.
Installation
|
|
Goenv is now installed, we will now install its wrapper goof:
|
|
Edit .bashrc
(or .zshrc
if you use zsh) and append these lines:
|
|
How to use it
To create a new go environment use make:
|
|
To exit the go environment use deactivate:
|
|
To use an environment use workon:
|
|
To show available environments use show:
|
|
Goenv itself is not enough to manage Go packages. It would be like using Virtualenv only and not using pip and requirements. In a future post I will explain how to use Godep.