Probably not the greatest this was a test on submodule approach to package managment for go and I have been using it a while and at best it has been clunky. Do not recommend.
Gob: You know, I sorta thought my contribution... could be a magic show!
Gob will help you start and manage your go project. It will
- set the GOPATH to the root of the project when you cd into the project.
- with the GOPATH set to the project, you can easily commit your project libraries to source control.
- add a go specific gitignore to a new project.
Reveler will do all that and more. It will create a new project, get revel, build it and set the GOPATH.
prerequisites: Go is installed and GOPATH is not set.
-
Clone the repository
git clone git@github.com:tanema/gob.git
-
Enter the project folder
cd gob
-
Add the
bin/
folder to your PATHecho "[[ -s \"$PWD/gob.sh\" ]] && source \"$PWD/gob.sh\" # Load gob" >> ~/.bashrc
-
Optionaly reload your bashrc
source ~/.bashrc
Gob
Use:
gob help Show this message
gob init Create a .goproj file in the pwd, marking it as the root of a project.
gob new,n Creates a new directory with a .goproj and .gitignore file in it.
gob sub Iterate through source and add as submodules
gob version Displays version Number.
Example:
gob init
gob new myproj
Reveler
Use:
reveler help Show this message
reveler init Create a .goproj file in the pwd, marking it as the root of a project.
reveler new,n name Creates a new directory with a .goproj and .gitignore file in it.
It then gets revel and builds it.
reveler run,r [env] Will run the revel project with an optional environment
reveler debug,d Will open a gdb console with the project running (NOTE: This builds before
it runs so any changes to the code will not be refelected in the gdb session).
reveler package This will package up your project without having to specify the path
reveler build,b target This will build your project without having to specify the path
reveler sub Iterate through source and add as submodules
reveler version Displays version Number.
Example:
reveler init
reveler new myproj
If there are any requests I am willing to make setting the GOPATH and PATH variables opt-out in case any of those who use a global GOPATH are interested in the limited functionality this tool still gives them.