Универсальный GitHub SDK для браузеров, Node.js и Deno: REST, GraphQL, GitHub App, вебхуки и OAuth в одном пакете.
google/go-github
Клиентская библиотека на Go для GitHub REST API v3 с типизированными сервисами для репозиториев, организаций, задач и других ресурсов.
- Звёзды
- 11,340
- Форки
- 2,567
- Открытые issues
- 29
- Последний коммит
- 24 часа назад
Что это?
go-github — клиентская библиотека на Go для GitHub REST API v3. С её помощью создают клиент, а затем обращаются к API через группы сервисов, повторяющие структуру документации GitHub API: например, Repositories, Organizations и Pull Requests. Запросы и ответы представлены структурами Go, поэтому вместо сырого JSON вызывающий код работает с типизированными данными.
Библиотека берет на себя типичные задачи, возникающие при прямых обращениях к API. В ней есть аутентификация по токену, вспомогательные функции для обнаружения ошибок первичного и вторичного ограничений частоты запросов, пагинация по номерам страниц или строковым курсорам, а также методы-итераторы на основе пакета iter в Go. Кроме того, библиотека предоставляет структуры и функции валидации для разбора payload вебхуков GitHub.
Проект рассчитан на две последние мажорные версии Go и поддерживается как Go-модуль с версионированными путями импорта. Кэширование условных запросов возложено на кэширующий HTTP-транспорт, использовать который вместе с клиентом рекомендуют авторы проекта.
Ключевые возможности
- 01Типизированные структуры Go для запросов и ответов GitHub REST API.
- 02Клиент с сервисами, организованными по структуре документации GitHub API.
- 03Аутентификация по токену и через GitHub App.
- 04Вспомогательные функции для обнаружения ошибок первичного и вторичного ограничений частоты запросов.
- 05Пагинация с итераторами по номерам страниц и курсорам.
- 06Структуры и валидаторы для разбора событий вебхуков GitHub.
Сценарии использования
- Создание ботов на Go или инструментов для CI, которые читают или обновляют репозитории, задачи и pull request.
- Разработка бэкендов GitHub App на Go для обработки событий вебхуков.
- Автоматизация административных задач в организациях, например получение списка участников или управление командами.
- Написание тестов поведения GitHub API с помощью mock-библиотеки.
Быстрый старт
- 1
Установите библиотеку в модуль Go
go get github.com/google/go-github/v93 - 2
Импортируйте пакет в код Go
- 3
Создайте клиент и вызывайте сервисы API
Что важно знать
- Требуется актуальная цепочка инструментов Go; минимальное требование — мажорный релиз Go версии N-1.
- Для большинства эндпоинтов нужен токен доступа, поэтому перед многочисленными вызовами необходимо настроить аутентификацию.
Темы
Частые вопросы
- Что такое go-github?
- Клиентская библиотека на Go для GitHub REST API v3 с типизированными сервисами для репозиториев, организаций, задач и других ресурсов. go-github — клиентская библиотека на Go для GitHub REST API v3. С её помощью создают клиент, а затем обращаются к API через группы сервисов, повторяющие структуру документации GitHub API: например, Repositories, Organizations и Pull Requests. Запросы и ответы представлены структурами Go, поэтому вместо сырого JSON вызывающий код работает с типизированными данными.
- go-github можно использовать бесплатно? Какая у него лицензия?
- go-github распространяется с открытым исходным кодом под лицензией BSD-3-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- go-github всё ещё поддерживается?
- Активно поддерживается. Последний коммит в go-github — 6 нояб. 2026 г..
- Для чего можно использовать go-github?
- Создание ботов на Go или инструментов для CI, которые читают или обновляют репозитории, задачи и pull request. Разработка бэкендов GitHub App на Go для обработки событий вебхуков. Автоматизация административных задач в организациях, например получение списка участников или управление командами. Написание тестов поведения GitHub API с помощью mock-библиотеки.
- Как установить go-github?
- Установите библиотеку в модуль Go: go get github.com/google/go-github/v93 Импортируйте пакет в код Go Создайте клиент и вызывайте сервисы API
- Где скачать go-github?
- Исходный код и инструкции по установке — на GitHub: https://github.com/google/go-github
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Официальный MCP-сервер GitHub: помогает AI-ассистентам работать с репозиториями, issues и pull request, а также использовать GitHub Actions.
Полнофункциональная ORM для Go: преобразует структуры в таблицы БД и поддерживает связи, хуки, транзакции и миграции.
Платёжный движок для Ruby on Rails, добавляющий поддержку клиентов, подписок, платежей и способов оплаты через Stripe, Paddle, Braintree и Lemon Squeezy.
Создаёт изображения для соцсетей и превью GitHub-репозиториев с актуальной статистикой, логотипами, шрифтами и фоновыми узорами.
Кроссплатформенная библиотека на Go для создания настраиваемых терминальных дашбордов с изменяемым размером и интерактивными виджетами.