Как создать pull request на GitHub
Важно: всегда делайте маленькие PR и следуйте правилам проекта. Это ускорит ревью и повысит шансы на принятие.

О чём эта статья
Это пошаговое руководство по созданию pull request на GitHub: от форка до открытия PR. Статья также содержит шаблоны, чеклисты, критерии приёмки и альтернативные подходы для разных сценариев.
Основная идея
Pull request — это способ предложить изменения в проекте, к которому у вас нет прав записи. Поддерживающие проект разработчики смогут просмотреть предложенные изменения, обсудить их и при необходимости влить их в основную ветку.
Шаг 1: Форк репозитория
Форк создаёт личную копию чужого репозитория в вашем аккаунте. В ней можно свободно вносить изменения без риска повредить оригинал.
На странице репозитория нажмите кнопку «Fork» в правом верхнем углу:
Заполните имя форка и опциональное описание, затем нажмите “Create fork”:
После этого у вас появится связанная копия репозитория. Связь позволяет легко сравнивать и отправлять изменения обратно в оригинал.
Шаг 2: Внесение изменений
- Решите, где вы будете редактировать: на веб-интерфейсе GitHub для простых правок или локально, если нужно тестирование.
- При работе локально клонируйте форк на машину:
git clone Замените
- Создайте новую ветку для одной задачи или фичи:
git checkout -b feat/описание-работы- Вносите маленькие, сфокусированные изменения. Добавляйте тесты и документацию, если требуется.
- Коммитьте с понятными сообщениями и пушьте ветку в свой форк:
git add .
git commit -m "Короткое описание: что и зачем"
git push origin feat/описание-работыСовет: короткие PR легче ревьюировать. Если задача большая — разбейте её на несколько PR.
Шаг 3: Открытие pull request
Если вы запушили ветку в форк, GitHub предложит открыть PR — вы увидите заметку о том, что ваша ветка впереди upstream на N коммитов:
Нажмите на выпадающий список «Contribute» и выберите Open pull request:
Заполните форму PR: заголовок, подробное описание, метки, reviewers. Нажмите “Create pull request”:
После создания подождите, пока мейнтейнеры проверят PR. Они могут попросить доработки. Будьте готовы вносить правки по их замечаниям.
Что писать в описании PR — шаблон
Заголовок: Краткое описание (типа feat/fix/docs)
Описание:
- Что сделано и почему
- Как можно протестировать изменения (шаги)
- Связанные issue/задачи (если есть)
- Ограничения и незначимые изменения
Checklist:
- [ ] Добавлены тесты
- [ ] Обновлена документация
- [ ] Линтер пройдёнИспользуйте этот шаблон как отправную точку. Хорошее описание ускоряет ревью.
Лучшие практики
- Делайте маленькие PR. Один PR — одна идея.
- Пишите понятные и компактные сообщения коммитов.
- Добавляйте тесты и обновляйте документацию.
- Следуйте CONTRIBUTING.md проекта.
- Ребейзьте или синхронизируйте ветку с upstream, если PR устарел и вызывает конфликты.
Критерии приёмки
- Изменения решают заявленную проблему.
- Все тесты проходят локально и в CI.
- Код соответствует стилю проекта (линтеры/форматтеры пройдены).
- Обновлена документация при необходимости.
- Нет «мусорного» кода (например, закомментированных участков без объяснения).
Чеклист для авторов и мейнтейнеров
Чеклист для автора:
- Создан форк и ветка
- Коммиты логичны и атомарны
- Описание PR полное и понятное
- Добавлены тесты и инструкции по запуску
- Проверены линтер и тесты
Чеклист для мейнтейнера:
- Понимаю цель PR
- Тесты проходят и покрытие адекватно
- Изменения безопасны и совместимы
- Документация обновлена при необходимости
Альтернативные способы открыть PR
- GitHub web editor: быстрые правки прямо в браузере.
- GitHub CLI: удобнее для регулярной работы.
- Пример: gh pr create –fill
- Pull request из ветки в том же репозитории (если у вас есть права записи).
- Патчи и e-mail (реже, для проектов с таким процессом).
Когда PR не подходит или не пройдёт
- Большая и разнородная функциональность в одном PR. В этом случае лучше разделить на несколько PR.
- Отсутствие тестов или нарушенные CI-пайплайны.
- Несоблюдение стайлгайда и CONTRIBUTING.md.
- Изменения затрагивают чувствительные части проекта без согласования (безпакетные миграции, изменения API).
Ментальные модели и эвристики
- PR — это не только код, но и объяснение: зачем изменения нужны.
- Думайте о PR как о письме к будущим вам и другим разработчикам: оно должно быть понятным.
- Мера хорошего PR — минимальное количество вопросов от ревьюера.
Мини‑методология: быстрый рабочий процесс
- Форк → локальная ветка.
- Разработка и локальное тестирование.
- Коммиты по смыслу, пуш в форк.
- Открыть PR с подробным описанием и чеклистом.
- Реагировать на ревью — править и пушить в ту же ветку.
- После слияния удалить локальную и удалённую ветки.
Тесты и критерии приёмки
Примеры тестов, которые стоит добавить:
- Unit-тесты для новой логики.
- Интеграционные тесты для взаимодействий компонентов.
- E2E-тесты, если PR меняет пользовательский поток.
Критерии приёмки:
- Все новые и существующие тесты проходят.
- Нет регрессий в связанной функциональности.
- CI не падает на шаге сборки/линтинга.
Роль‑ориентированные рекомендации
Для участника (contributor):
- Начните с простых issues: документация, фиксы багов.
- Пишите тесты и следуйте стилю репозитория.
Для мейнтейнера (maintainer):
- Дайте ясные ожидания в CONTRIBUTING.md и шаблонах PR.
- Быстро реагируйте: долгие ожидания демотивируют вкладчиков.
Шаблон заголовка PR
- feat: добавить авторизацию через OAuth
- fix: исправить утечку памяти при загрузке
- docs: обновить README по установке
Частые ошибки и как их избежать
- Ошибка: большой PR с несколькими идеями. Решение: разбейте PR.
- Ошибка: неактуальная ветка. Решение: синхронизируйте с upstream (rebase или merge).
- Ошибка: отсутствие инструкций для тестирования. Решение: добавьте секцию “Как протестировать”.
Заключение
Pull request — ключевой механизм совместной работы на GitHub. Делайте PR маленькими, документируйте изменения и добавляйте тесты. Следуйте CONTRIBUTING.md проекта, и ваши вклады будут приниматься быстрее.
Краткое резюме:
- Форк -> ветка -> изменения -> пуш -> открыть PR.
- Пишите понятные описания и небольшие коммиты.
- Добавляйте тесты и следуйте правилам проекта.
Важно: уважайте процесс проекта. Быстрая и вежливая коммуникация повышает шансы принять ваш вклад.
Похожие материалы
Изменение регистра текста в Google Docs
Как сделать скриншот в Windows — все способы
Водяной знак в Microsoft Word — добавить, настроить, удалить
Как запустить успешный Patreon
Как копировать и вставлять на iPhone