Simple Go Manager de versión, sin gluten.

Los gerentes de versiones existentes crean desde la fuente, tienen demasiadas dependencias, contaminan la ruta y/o requieren que use un entorno de shell específico. g tiene como objetivo ser lo más discreto y portátil posible.
g está inspirado en TJ/N, que he contribuido en el pasado, y toma prestado parte de su código.
$GOPATH y $GOROOT , lo cual ...go y no específico de g .source funciones en su configuración de shell.curl y wget Soporte de primera clase por igual.curl o wget , consulte con curl -V o wget -V respectivamente.No es estrictamente necesario, pero muy recomendable, para eliminar por completo cualquier instalación de GO anterior, solo para evitar cualquier resultado extraño.
IMPORTANTE : Antes de continuar, le animo a que lea el script de instalación; Nunca confíes en alguien que te diga que ejecute comandos aleatorios.
Dicho esto, puede instalar g con un solo comando:
curl -sSL https://git.io/g-install | sh -s Si usa wget en su lugar:
wget -qO- https://git.io/g-install | sh -s Eso descargará el script g , lo pondrá dentro de $GOPATH/bin/ , le dará derechos de ejecución con chmod y configurará el archivo de inicialización de su shell predeterminado, establece las variables de entorno GOPATH & GOROOT y agregó $GOPATH/bin a la PATH .
Luego se le pedirá que instale la última versión de Go; Puede omitir este paso e instalar su versión preferida con g más tarde.
Nota : debe reiniciar su sesión de shell actual para que lea estos nuevos Vars Env para usar g o go .
El script de instalación actualmente admite los siguientes shells:
Eso no significa que no pueda usar g con otros proyectiles, simplemente continúe con la instalación manual.
El script de instalación seleccionará su shell predeterminado para la configuración. Es posible que vea cuál es su shell predeterminado ejecutando:
echo $SHELLSi desea configurar un shell Diff, puede pasarlo como argumentos:
curl -sSL https://git.io/g-install | sh -s -- fishTambién podría configurar varias conchas, pero eso generalmente no es necesario:
curl -sSL https://git.io/g-install | sh -s -- fish bash zsh
Use la opción -y para omitir las indicaciones y asumir "sí" para todo:
curl -sSL https://git.io/g-install | sh -s -- -yPor defecto, se utilizan estas variables de entorno GO:
GOROOT: $HOME/.go
GOPATH: $HOME/go
$GOPATH/bin se agrega a la PATH y allí se copia g
Puede establecer esas variables antes de ejecutar el script de instalación. Por ejemplo, en Bash y Zsh:
export GOROOT= ~ /.local/share/golang
export GOPATH= ~ /MyProjects/go-projects
curl -sSL https://git.io/g-install | sh -sEn peces:
set -gx GOROOT ~ /.local/share/golang
set -gx GOPATH ~ /MyProjects/go-projects
curl -sSL https://git.io/g-install | sh -s$GOPATH y $GOROOT y agregar $GOPATH/bin a su PATH ../bin/g y colóquelo en cualquier lugar disponible en su PATH : dentro de $GOPATH/bin/ es una buena opción.chmod +x $GOPATH/bin/g . g incluye un comando de self-upgrade que puede ejecutar para obtener la última versión de g Este comando simplemente ejecuta el script de instalación una vez más.
Usage: g [COMMAND] [options] [args]
Commands:
g Open interactive UI with downloaded versions
g install latest Download and set the latest go release
g install <version> Download and set go <version>
g download <version> Download go <version>
g set <version> Switch to go <version>
g run <version> Run a given version of go
g which <version> Output bin path for <version>
g remove <version ...> Remove the given version(s)
g prune Remove all versions except the current version
g list Output downloaded go versions
g list-all Output all available, remote go versions
g self-upgrade Upgrades g to the latest version
g help Display help information, same as g --help
Options:
-h, --help Display help information and exit
-v, --version Output current version of g and exit
-q, --quiet Suppress almost all output
-c, --no-color Force disabled color output
-y, --non-interactive Prevent prompts
-o, --os Override operating system
-a, --arch Override system architecture
-u, --unstable Include unstable versions in list
g es un solo script portátil de shell que actúa como un binario que está disponible en su $PATH . Si configura g con el script de instalación, su eliminación debería ser bastante sencilla.
En primer lugar, obtenga información sobre su sistema:
echo $SHELL
echo $GOROOT
echo $GOPATH
command -v g Notará que el archivo g vive dentro de su directorio $GOPATH/bin/ . Si solo desea eliminar g y mantener sus binarios go instalados actualmente y archivos relacionados, simplemente elimine g :
# If you're using bash, zsh, or other POSIX shell:
rm " $( command -v g ) "
# If you're using fish:
rm (command -v g) Ahora, si desea eliminar todo, primero asegúrese de hacer una copia de seguridad de sus proyectos dentro de $GOROOT , si corresponde. Luego retire todo dentro de $GOROOT y $GOPATH :
rm -r $GOPATH $GOROOT Luego abra su archivo de configuración de shell con su editor de texto de elección y busque una línea que incluya g-install para eliminarlo. Estas son las ubicaciones generalmente utilizadas por el script de instalación:
# bash on MacOS
~ /.bash_profile
# bash on linux/BSD
~ /.bashrc
# zsh
~ /.zshrc
# fish shell
~ /.config/fish/config.fish
# csh
~ /.cshrc
# tcsh
~ /.tcshrc
# For ash and dash, check your $ENV var
echo $ENV En este punto, habrías eliminado g e go por completo.
g y g-install con Posix g-install g install <version> , tal vez use o set . Ver #8 install solo para instalar y eliminar la opción --download g ya existe, principalmente zsh con oh-my-zsh g-install le ofrezca al usuario configurar un alias alternativo para g self-upgrade se lance si g no se instaló de la manera común complete que genera finalizaciones para los shells compatibles g-install getice los shells para llamar a este comando para completar g )goenv antes de instalar una nueva versión de Go.gvm .Por favor, lea contribuyendo.md. ♥
n , en el que g se inspira y se basa en.n-install , en el que g también se basa. MIT ♥