Simple Go Version Manager, без глютена.

Существующие менеджеры версий создают от источника, имеют слишком много зависимостей, загрязняют путь и/или требуют, чтобы вы использовали определенную среду оболочки. g стремится быть максимально ненавязчивой и портативной.
g вдохновлен TJ/N, в котором я внес свой вклад в прошлом, и заимствует часть его кода.
$GOPATH и $GOROOT , которые ...go и не специфично для g .source функции в конфигурации вашей оболочки.curl и wget первоклассная поддержка.curl или wget , проверьте с помощью curl -V или wget -V соответственно.Не требуется строго необходимо, но настоятельно рекомендуется, чтобы полностью удалить любую предыдущую установку GO - просто чтобы предотвратить какой -либо странный результат.
Важно : прежде чем продолжить, я призываю вас прочитать сценарий установки; Никогда не доверяйте кому -то, кто говорит вам запустить случайные команды.
Тем не менее, вы можете установить g с одной командой:
curl -sSL https://git.io/g-install | sh -s Если вы используете wget вместо этого:
wget -qO- https://git.io/g-install | sh -s Это загрузит сценарий g , поместит его внутри $GOPATH/bin/ , даст ему права на выполнение с помощью chmod и настроить файл инициализации оболочки по умолчанию, установив переменные среды GOPATH & GOROOT и добавление $GOPATH/bin в PATH .
Тогда вам будет предложено установить последнюю версию GO; Вы можете пропустить этот шаг и установить предпочтительную версию с g позже.
Примечание . Вы должны перезагрузить текущий сеанс оболочки, чтобы он прочитал эти новые Env Vars, чтобы использовать g или go .
Сценарий установки в настоящее время поддерживает следующие оболочки:
Это не значит, что вы не можете использовать g с другими оболочками, просто приступите к ручной установке.
Сценарий установки собирается выбрать вашу оболочку по умолчанию для конфигурации. Вы можете увидеть, что такое оболочка по умолчанию, работая:
echo $SHELLЕсли вы хотите настроить оболочку Diff, вы можете передать ее в качестве аргументов:
curl -sSL https://git.io/g-install | sh -s -- fishВы также можете настроить несколько оболочек, но это обычно не требуется:
curl -sSL https://git.io/g-install | sh -s -- fish bash zsh
Используйте опцию -y , чтобы пропустить подсказки и предположить «да» для всего:
curl -sSL https://git.io/g-install | sh -s -- -yПо умолчанию используются переменные среды GO:
GOROOT: $HOME/.go
GOPATH: $HOME/go
$GOPATH/bin добавляется на PATH , и есть, где g скопирован.
Вы можете установить эти переменные перед запуском сценария установки. Например, в Bash и ZSH:
export GOROOT= ~ /.local/share/golang
export GOPATH= ~ /MyProjects/go-projects
curl -sSL https://git.io/g-install | sh -sВ рыбе:
set -gx GOROOT ~ /.local/share/golang
set -gx GOPATH ~ /MyProjects/go-projects
curl -sSL https://git.io/g-install | sh -s$GOPATH & $GOROOT и добавьте $GOPATH/bin на свой PATH ../bin/g и поместите его в любом месте на своем PATH - внутри $GOPATH/bin/ хороший вариант.chmod +x $GOPATH/bin/g . g включает в себя команду self-upgrade которую вы можете запустить, чтобы получить последнюю версию g Эта команда просто запускает сценарий установки еще раз.
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 - это единый портативный сценарий оболочки, который действует как бинар, который доступен в вашем $PATH . Если вы настраиваете g с помощью сценария установки, его удаление должно быть довольно простым.
Прежде всего, получите некоторую информацию о вашей системе:
echo $SHELL
echo $GOROOT
echo $GOPATH
command -v g Вы заметите, что файл g живет в вашем каталоге $GOPATH/bin/ . Если вы хотите удалить g и сохранить свои в настоящее время установленные go двойные и сопутствующие файлы, просто удалите g :
# If you're using bash, zsh, or other POSIX shell:
rm " $( command -v g ) "
# If you're using fish:
rm (command -v g) Теперь, если вы хотите удалить все, сначала обязательно выполните резервную копию своих проектов в $GOROOT , если таковые имеются. Затем удалите все внутри $GOROOT и $GOPATH :
rm -r $GOPATH $GOROOT Затем откройте файл конфигурации оболочки с помощью вашего текстового редактора и поищите строку, которая включает в себя g-install для его удаления. Это места, обычно используемые сценарием установки:
# 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 На этом этапе вы бы удалили g и go полностью.
g и g-install Posix g-install g install <version> , возможно, use или set . Смотрите #8 install только для установки и удалите опцию --download g уже существует, в основном zsh с oh-my-zsh g-install предлагает пользователю настройку альтернативного псевдонима для g self-upgrade если g не был установлен в общем виде complete команду, которая генерирует завершения для поддерживаемых оболочек g-install Install Shells, чтобы вызвать эту команду для завершений g )goenv перед установкой новой версии GO.gvm .Пожалуйста, прочитайте Anplying.md. ♥
n Project, который g вдохновляет и основан.n-install Project, на котором g также основан. MIT ♥