Встановлення Go¶
Ці матеріали розраховані на Go 1.26.4 (поточний стабільний). Перевіряйте go.dev/dl для отримання найактуальнішої версії у будь-який момент.
macOS¶
Три розумних варіанти. Оберіть один — не змішуйте їх.
Варіант 1 — Homebrew (рекомендовано для щоденної роботи на macOS)¶
Якщо ви вже використовуєте Homebrew:
- Легке оновлення:
brew upgrade go. - Чисте видалення:
brew uninstall go. - Шлях встановлення — префікс Homebrew (
/opt/homebrew/Cellar/go/...на Apple Silicon,/usr/local/Cellar/go/...на Intel), з символічним посиланням у$(brew --prefix)/bin/go. - Відстає від офіційних релізів на кілька днів — зазвичай не критично.
Варіант 2 — Офіційний інсталятор .pkg¶
- Завантажте з go.dev/dl — оберіть
darwin-arm64.pkg(Apple Silicon) абоdarwin-amd64.pkg(Intel). - Двічі клацніть і дотримуйтесь підказок (потрібен пароль адміністратора).
- Інсталятор розміщує toolchain у
/usr/local/goі додає/usr/local/go/binдо вашогоPATHчерез/etc/paths.d/go. - Перезапустіть термінал.
Варіант 3 — Ручне встановлення з архіву¶
Для повного контролю над місцем встановлення:
# download go1.26.4.darwin-arm64.tar.gz from https://go.dev/dl/
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf ~/Downloads/go1.26.4.darwin-arm64.tar.gz
Додайте /usr/local/go/bin до вашого PATH у ~/.zshrc (або ~/.bash_profile):
Перезавантажте оболонку і перевірте (дивіться "Перевірка встановлення" нижче).
Linux¶
Офіційний спосіб — архів tar. Пакети дистрибутивів (apt install golang-go, dnf install golang тощо) часто відстають від офіційного релізу на кілька місяців — підходить для нескладного використання, але не рекомендується, якщо вам потрібні актуальні функції.
- Завантажте відповідний
.tar.gzз go.dev/dl для вашої архітектури. - Видаліть попереднє встановлення і розпакуйте:
- Додайте
/usr/local/go/binдо вашогоPATH, дописавши цей рядок у~/.profile(або~/.bashrc):
- Застосуйте і перевірте:
Windows¶
- Завантажте
.msiз go.dev/dl. - Двічі клацніть; інсталятор розміщує Go у
Program Filesі додає доPATH. - Закрийте і знову відкрийте всі відкриті командні рядки, щоб вони отримали оновлений
PATH. - Перевірте у новому командному рядку:
Перевірка встановлення¶
Після встановлення виконайте три швидкі перевірки:
go version
# example: go version go1.26.4 darwin/arm64
go env GOROOT
# wherever the toolchain landed (e.g. /usr/local/go)
go env GOPATH
# defaults to $HOME/go — holds module cache and installed tools
Потім запустіть hello-world, щоб підтвердити, що весь конвеєр працює наскрізь:
mkdir -p /tmp/hello && cd /tmp/hello
go mod init example.com/hello
cat > hello.go <<'EOF'
package main
import "fmt"
func main() {
fmt.Println("hello, go")
}
EOF
go run .
# hello, go
Якщо go version працює, а go run . — ні, toolchain встановлено правильно, а збій пов'язаний з вашим кодом або з PATH для кешу модулів.
Встановлення додаткових версій паралельно¶
Якщо Go вже встановлено, ви можете отримати інші версії через офіційний механізм dl/ — менеджер версій не потрібен:
Кожна версія стає своєю власною командою (go1.22.3, go1.23.0 тощо). Вони встановлюються у ~/sdk/<version>/ і не заважають вашому основному бінарному файлу go.
Знайдіть GOROOT кожного:
Щоб видалити паралельну версію, видаліть її директорію GOROOT і бінарний файл goX.Y.Z з $GOBIN.
Дивіться 06-multiple-go-versions.md для ширшого контексту — GOTOOLCHAIN=auto автоматично обробляє вибір версії для кожного проєкту, щойно у вас встановлено будь-який Go.
Видалення Go¶
macOS (встановлення через .pkg)¶
За бажанням також видаліть ~/go/, щоб очистити кеш модулів і встановлені інструменти.
macOS (встановлення через Homebrew)¶
Linux¶
Windows¶
Панель керування → Установка та видалення програм → Go Programming Language → Видалити. Змінні середовища очищаються автоматично.
З досвіду Python¶
Кілька речей, які варто переосмислити після років з Python:
- Один toolchain постачає все. Компілятор, компонувальник, засіб запуску тестів, форматер, менеджер залежностей — усе це бінарний файл
go. Немає аналога необхідності окремо встановлюватиpip,venv,pytest,blackіflake8. - Жодних віртуальних середовищ для кожного проєкту. Ізоляція модулів забезпечується файлами
go.modу корені кожного проєкту; залежності кешуються глобально у$GOPATH/pkg/mod/, але розрізняються за модулем. Нічого «активувати» не потрібно. $GOBIN≈ місце встановленняpipx. Післяgo install <tool>@latestбінарний файл опиняється у~/go/bin/— єдиному глобальному місці для CLI-інструментів, без віртуальних середовищ.- Жодної пастки «системного Python». macOS не постачає Go, тож немає ризику випадково оновити системний Go. Що б ви не встановили — це єдиний Go.