GitHub — веб-платформа для хранения файлов в Git-репозиториях, отслеживания изменений и совместной работы. Это руководство поможет создать первый репозиторий, освоить базовый цикл Git и безопасно принимать изменения через запрос на слияние (Pull Request).
Документация сверена 3 октября 2026 года. Локальный цикл Git проверен отдельно; регистрация, внешние PR и запуск облачных агентов при подготовке не выполнялись.
С чего начать под свою задачу
Если вы хотите пользоваться найденной программой, начните с её README и выбора файла в Releases. Чтобы сохранить несколько находок, используйте Stars и Lists. Чтобы вести свой проект, пройдите браузерный маршрут ниже, а для работы с компьютера изучите Git.
README объясняет назначение файлов; оформлению посвящено отдельное руководство. Постоянная публикация статического сайта — следующий отдельный процесс, описанный в GitHub Pages. Не нужно осваивать все возможности GitHub до первого полезного действия.
Что такое GitHub
GitHub хранит проекты в репозиториях и использует Git для ведения истории изменений. Вы можете работать через браузер, командную строку, настольный Git-клиент или редактор кода.
Новичку удобно начать с GitHub.com. В браузере доступен весь базовый процесс GitHub Flow: создание ветки или форка, редактирование и предпросмотр файлов, коммиты, загрузка и скачивание файлов, а также открытие Pull Request.
Git и GitHub решают разные задачи:
- Git — система контроля версий, работающая на компьютере;
- GitHub — веб-сервис для размещения Git-репозиториев, совместной работы, ревью и автоматизации.
Основные возможности
| Возможность | Что даёт |
| Хранение проектов | Файлы и история изменений доступны через браузер и локальные инструменты |
| Совместная работа | Ветки и Pull Request позволяют готовить и проверять изменения отдельно от основной версии |
| Открытая разработка | Публичный репозиторий можно изучить, скопировать через fork и дополнить собственным Pull Request |
| Документация и файлы | README и другие текстовые файлы можно просматривать и редактировать прямо на GitHub |
| Автоматизация | GitHub Actions запускает рабочие процессы, а их использование учитывается в квотах минут и хранилища |
| Управление работой | Issues используют для задач, а Pull Request хранит обсуждение конкретных изменений |
Полезные сценарии
Сценарий 1. Вести личный проект с историей изменений
Задача: хранить сайт, скрипты, документацию или заметки и иметь возможность вернуться к прежней версии.
Что делаете: создаёте репозиторий, добавляете README, изменяете файлы небольшими коммитами и отправляете их на GitHub.
Результат: на странице репозитория видны актуальные файлы и история коммитов.
Ограничение: для разового обмена несколькими файлами облачный диск может оказаться проще.
Сценарий 2. Проверить правки перед добавлением в основную ветку
Задача: дать коллеге или ИИ-агенту подготовить изменения, не добавляя их сразу в main.
Что делаете: создаёте отдельную ветку, вносите изменения, открываете Pull Request и запрашиваете ревью.
Результат: рецензент видит разницу между ветками, оставляет комментарии, предлагает исправления или одобряет изменения. После выполнения обязательных проверок Pull Request можно объединить с основной веткой или закрыть без слияния.
Ограничение: права доступа и правила слияния зависят от настроек репозитория. Чтобы запросить ревью через поле Reviewers, автору нужны права записи, а рецензенту — как минимум доступ на чтение.
Ключевые понятия
Репозиторий
Пространство проекта на GitHub. В нём находятся файлы, каталоги и история изменений.
Коммит
Снимок выбранных изменений с сообщением о том, что было сделано. Небольшие осмысленные коммиты проще проверять и при необходимости отменять.
Ветка
Изолированная линия изменений. Основная ветка часто называется main, но конкретное имя зависит от репозитория.
Pull Request
Предложение объединить изменения из одной ветки в другую. Через Pull Request участники просматривают разницу, обсуждают код и проверяют результат перед слиянием.
Fork
Копия репозитория в другом аккаунте. Fork обычно используют, когда нужно предложить изменения в проекте без права записи в исходный репозиторий.
README.md
Файл с описанием проекта, инструкциями по запуску и другой вводной информацией. Он пишется в формате Markdown.
Регистрация и первый репозиторий
Шаг 1. Создайте аккаунт
Откройте github.com, нажмите Sign up и пройдите регистрацию.
Шаг 2. Создайте репозиторий
- Нажмите + → New repository.
- Введите имя, например
my-first-repo. - Выберите видимость: Public или Private.
- Добавьте файл README.
- Нажмите Create repository.
Шаг 3. Сделайте первый коммит
Откройте README.md, нажмите кнопку редактирования, измените текст и выберите Commit changes. Введите короткое сообщение, описывающее правку.
Шаг 4. Загрузите файлы
Выберите Add file → Upload files, добавьте файлы и создайте коммит. После этого они появятся в репозитории.
.env. Включите такие файлы в .gitignore до первого коммита. Простое удаление файла новым коммитом не очищает секрет из предыдущей истории.Работа через браузер
Для небольших изменений командная строка не обязательна. На GitHub.com можно:
- создавать ветки и fork;
- редактировать и предварительно просматривать файлы;
- создавать коммиты;
- загружать и скачивать файлы;
- открывать Pull Request.
Для более сложного редактирования в браузере нажмите клавишу . на странице репозитория: откроется редактор github.dev. Если нужны терминал, зависимости и вычислительные ресурсы, можно использовать облачную среду Codespaces при наличии доступа и доступной квоты.
Первые шаги с Git на компьютере
Локальная работа удобна, когда нужно запускать проект, пользоваться собственным редактором или менять несколько файлов одновременно.
- Установите Git и настройте имя и email автора коммитов. Начальная настройка описана в руководстве по Git.
- Скопируйте адрес репозитория из меню Code.
- Клонируйте репозиторий.
- Создайте отдельную ветку для изменений.
- Сделайте коммит и отправьте ветку на GitHub.
git clone https://github.com/OWNER/my-first-repo.git
cd my-first-repo
git checkout -b update-readme
git status
git diff
git add README.md
git diff --cached
git commit -m "Обновил README"
git push --set-upstream origin update-readmeЗамените OWNER своим реальным именем аккаунта, а имя репозитория — именем уже созданного проекта. Команды выше предполагают, что вы отредактировали README; перед git add прочитайте git diff, а перед коммитом — git diff --cached. Сохраните только относящийся к задаче файл. Авторизацию для HTTPS настройте по официальной инструкции: пароль аккаунта не используется как пароль для Git-операций.
После отправки ветки откройте репозиторий в браузере и создайте Pull Request в фактическую основную ветку проекта, часто main.
Как проверить результат
- новая ветка отображается в селекторе веток;
- коммит виден в истории;
- Pull Request показывает ожидаемые изменённые файлы;
- после слияния изменения появляются в базовой ветке.
Если отправка не проходит, проверьте адрес удалённого репозитория и авторизацию. Командная утилита GitHub CLI предоставляет отдельные возможности для аутентификации и работы с репозиториями.
Безопасный цикл Pull Request
Официальный quickstart GitHub рекомендует следующий порядок:
- Создайте ветку или fork.
- Внесите небольшое сфокусированное изменение.
- Сохраните его осмысленным коммитом.
- Отправьте ветку на GitHub.
- Откройте Pull Request против базовой ветки.
- Запросите ревью.
- Исправьте замечания новыми коммитами в той же ветке.
- После прохождения обязательных ревью и проверок выполните merge.
Новые коммиты в рабочей ветке автоматически добавляются в открытый Pull Request. Если изменения больше не нужны, Pull Request можно закрыть без слияния.
Перед слиянием можно попросить ИИ разобрать одно изменение по его diff. Добавьте исходную задачу и результаты проверок, чтобы ответ относился к конкретной версии.
Промпт:
Проверь один Pull Request по переданным материалам. Ничего не исправляй, не публикуй комментарии, не выполняй merge и не выпускай изменения.
Незаполненные поля в квадратных скобках считай отсутствующими данными.
Задача: [ожидаемое поведение].
Версии base и head: [идентификаторы коммитов или «неизвестно»].
Материалы: [один обезличенный diff; укажи, полный ли он; добавь необходимый окружающий код].
Выполненные проверки: [команда или сценарий, результат и проверенная версия; либо «не выполнялись»].
Границы: [что не должно меняться].
Сначала обозначь, что удалось прочитать. Пустой diff или неясная задача — основание запросить недостающее и остановиться. Если версии или результаты проверок расходятся, назови это явно; не переноси успешную проверку старого head на новый.
Объясни, какое поведение меняется. Перечисли только обоснованные проблемы: файл и место в diff, условие возникновения, последствия и способ воспроизвести. Не задавай обязательное число замечаний; их может не быть. Не выдумывай номера строк или поведение кода, которого нет.
Раздели подтверждённые дефекты, вопросы и непроверенное. Сверь изменение с задачей и границами. В конце назови один следующий шаг: исправить конкретный дефект, получить недостающий код или проверить конкретный сценарий.
Если полного изменения, актуального head или обязательных проверок нет в материалах, не называй PR готовым к merge. Отсутствие замечаний по фрагменту не доказывает готовность всего PR.Получится разбор поведения и замечания с конкретными основаниями либо список недостающих данных.
Откройте указанные места в актуальном diff. Повторите предложенный сценарий и убедитесь, что результаты проверок относятся к тому же head.
Модель рассматривает переданные материалы. Решение о слиянии требует обязательных проверок и правил вашего репозитория.
Публичные и приватные репозитории
| Параметр | Public | Private |
| Кто видит содержимое | Любой пользователь | Владелец и пользователи с выданным доступом |
| Подходит для | Open source, портфолио, публичной документации | Рабочих и личных проектов с ограниченным доступом |
| Ревью | Условия зависят от прав и настроек репозитория | Рецензенту требуется доступ к репозиторию |
Не храните конфиденциальные данные в публичном репозитории. Приватность репозитория также не заменяет правильное управление секретами.
Включённые квоты GitHub
Данные сверены 3 октября 2026 года по справочнику включённого использования GitHub. Таблица Actions относится к включённым минутам и хранению артефактов; условия отдельных runners и кэша проверяются дополнительно.
| План | GitHub Actions | Codespaces для личных аккаунтов |
| GitHub Free | 2 000 минут и 500 МБ хранилища в месяц | 120 core-hours и 15 ГБ хранилища в месяц |
| GitHub Pro | 3 000 минут и 1 ГБ хранилища в месяц | 180 core-hours и 20 ГБ хранилища в месяц |
| GitHub Free для организаций | 2 000 минут и 500 МБ хранилища в месяц | Включённой квоты нет |
| GitHub Team | 3 000 минут и 2 ГБ хранилища в месяц | Включённой квоты нет |
| GitHub Enterprise Cloud | 50 000 минут и 50 ГБ хранилища в месяц | Включённой квоты нет |
После превышения включённой квоты GitHub может начислять плату за дополнительное использование. Проверьте, поддерживает ли выбранный продукт бюджет с остановкой использования: уведомление о расходе само по себе не означает остановку. Сверьте фактические настройки до запуска платных ресурсов.
Актуальную стоимость подписок и тарификацию сверх квоты проверяйте непосредственно перед оплатой: эти значения могут меняться.
Лимиты репозитория и больших файлов
По состоянию на 3 октября 2026 года GitHub указывает следующие ограничения и рекомендации:
- рекомендуемый предел размера каталога
.gitна диске — 10 ГБ; - максимальный размер одного push — 2 ГБ;
- рекомендуемый максимальный размер отдельного Git-объекта — 1 МБ;
- принудительный лимит отдельного Git-объекта — 100 МБ;
- для больших двоичных файлов рекомендуется Git Large File Storage (Git LFS).
Большие репозитории дольше клонируются и могут замедлять интерфейс и операции Git. Генерируемые файлы лучше хранить вне Git, а крупные двоичные объекты — в Git LFS или объектном хранилище.
Подключение ИИ-агентов для работы с кодом к GitHub
GitHub поддерживает собственного облачного агента GitHub Copilot и сторонних coding agents, включая OpenAI Codex. По состоянию на 3 октября 2026 года интеграция сторонних агентов находится в публичном предварительном доступе и доступна на платных планах GitHub Copilot.
Задачу агенту можно запустить:
- на вкладке Agents;
- назначением агента на существующую issue, то есть задачу;
- упоминанием агента в комментарии к Pull Request;
- через GitHub Mobile;
- из Visual Studio Code.
Агент работает асинхронно, готовит изменения и создаёт Pull Request для ревью. Доступ к сторонним агентам сначала нужно разрешить в политиках личного аккаунта, организации или предприятия.
GitHub автоматически сканирует код, созданный или изменённый сторонним агентом, на наличие проблем безопасности и пытается устранить их до завершения подготовки Pull Request. В этот процесс входят:
- CodeQL для поиска проблем безопасности в коде;
- secret scanning для обнаружения ключей, токенов и других секретов;
- проверка новых зависимостей по GitHub Advisory Database на наличие вредоносных пакетов и уязвимостей с рейтингом CVSS High или Critical.
Эти проверки снижают риск, но не заменяют человеческое ревью, тесты и правила защиты веток.
Как проверить работу агента
- Убедитесь, что агент разрешён политиками аккаунта.
- Запустите небольшую задачу через Agents или issue.
- Дождитесь созданного Pull Request.
- Проверьте изменённые файлы, результаты автоматических проверок и отсутствие секретов.
- Оставьте комментарий с исправлениями или выполните merge после успешного ревью.
Полезные файлы в репозитории
| Файл | Зачем нужен |
README.md | Описание проекта, установка, запуск и правила использования |
.gitignore | Список локальных файлов, которые Git не должен добавлять в репозиторий |
LICENSE | Условия использования и распространения проекта |
CONTRIBUTING.md | Правила подготовки коммитов, веток и Pull Request |
.github/workflows/ | Рабочие процессы GitHub Actions |
Если используемый агент поддерживает инструкции из репозитория, добавьте отдельный файл с правилами проекта. Формат и имя такого файла проверяйте в документации конкретного агента.
Когда GitHub не подходит
GitHub рассчитан прежде всего на версионируемые проекты:
- для разового обмена файлами проще использовать облачный диск;
- для заметок без необходимости в Git удобнее специализированная база знаний;
- крупные двоичные файлы требуют Git LFS или отдельного хранилища;
- сложные проекты удобнее редактировать локально, в Codespaces или полноценном редакторе, а не на странице одного файла.
Частые вопросы
Нужно ли уметь программировать?
Нет. Через браузер можно редактировать Markdown и другие текстовые файлы, создавать ветки, коммиты и Pull Request без командной строки.
Чем GitHub отличается от Git?
Git отслеживает версии файлов. GitHub размещает Git-репозитории в интернете и добавляет совместную работу, Pull Request, Issues и автоматизацию.
Можно ли работать только через браузер?
Да, особенно с небольшими изменениями. Для запуска команд, установки зависимостей и комплексного редактирования понадобится Codespaces или локальная среда.
Гарантирует ли отдельная ветка безопасность основной версии?
Изменения из ветки не попадут в базовую ветку до merge. Однако пользователь с достаточными правами может изменить main напрямую, если это не запрещено правилами репозитория. Для важных проектов настройте защиту ветки, обязательные ревью и проверки.
Можно ли доверить merge ИИ-агенту?
Pull Request позволяет сначала изучить результат агента. Перед слиянием проверьте diff, тесты, зависимости, секреты и результаты автоматического анализа.
Официальные ссылки
| Ресурс | URL |
| Работа с GitHub через браузер и компьютер | Connecting to GitHub |
| Первый Pull Request | Quickstart for pull requests |
| Лимиты репозиториев | Repository limits |
| Включённые квоты продуктов | Product usage included |
| Сторонние coding agents | About third-party coding agents |
| Статус GitHub | githubstatus.com |
Если вы внедряете GitHub в личный или командный процесс, заранее определите правила веток, ревью, хранения секретов и контроля расходов.
Следующий шаг
Настройте правила проектной памяти для coding-агента: AGENTS.md / SESSION_NOTES — проектная память для coding-агентов
GitHub особенно полезен, когда нужно видеть историю изменений и согласовывать работу через Pull Request. Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov


