Терминальный интерфейс GitHub: просматривайте PR и issues, проверяйте их и выполняйте нужные действия, не выходя из командной строки.
github/gh-stack
Расширение GitHub CLI для создания, перебазирования, отправки и слияния цепочек небольших веток с pull request, удобных для ревью.
- Звёзды
- 1,752
- Форки
- 97
- Открытые issues
- 158
- Последний коммит
- 9 часов назад
Что это?
gh-stack — расширение GitHub CLI для работы со stacked pull request: большое изменение разбивается на цепочку небольших веток, каждая из которых строится поверх предыдущей. Для каждого PR в качестве базовой указывается ветка под ним, поэтому ревьюеры видят только diff соответствующего слоя.
Инструмент берет на себя рутинную работу со стеком: создание веток, каскадное перебазирование при изменении нижнего слоя, отправку веток, создание отдельного PR для каждого слоя и объединение их в Stack на GitHub. Также есть команды для перехода между слоями, изменения структуры стека через терминальный интерфейс (удаление, объединение, вставка, перестановка и переименование веток), синхронизации состояния после слияния PR и слияния нескольких stacked PR одной атомарной операцией.
Метаданные стека хранятся локально в общей директории Git, поэтому связанные рабочие деревья используют один каталог. При конфликтах во время перебазирования операция приостанавливается; ее можно продолжить или отменить с помощью специальных флагов.
Ключевые возможности
- 01Создание стека веток и перебазирование всей цепочки при изменении нижнего слоя.
- 02Отправка отдельного PR для каждой ветки с корректными базовыми ветками и объединение PR в Stack на GitHub.
- 03Изменение структуры стека в терминальном интерфейсе: удаление, объединение, вставка, перестановка и переименование веток.
- 04Синхронизация состояния стека с GitHub и удаление веток после слияния PR.
- 05Слияние нескольких stacked PR вплоть до выбранного PR за одну операцию.
- 06Поддержка связанных рабочих деревьев Git и вывод в формате JSON для `gh stack view`.
Сценарии использования
- Разбиение крупной функциональности на небольшие PR, которые ревьюеры могут одобрять по одному слою за раз.
- Обновление среднего слоя стека после замечаний к ревью без ручного перебазирования каждой ветки.
- Последовательное слияние зависимых PR снизу вверх по стеку.
Быстрый старт
- 1
Установите расширение с помощью GitHub CLI
gh extension install github/gh-stack - 2
Создайте новый стек и переключитесь на первую ветку
gh stack init - 3
Добавьте в стек ещё одну ветку
gh stack add api-endpoints - 4
Откройте стек пул-реквестов
gh stack submit
В подборках
Темы
Частые вопросы
- Что такое gh-stack?
- Расширение GitHub CLI для создания, перебазирования, отправки и слияния цепочек небольших веток с pull request, удобных для ревью. gh-stack — расширение GitHub CLI для работы со stacked pull request: большое изменение разбивается на цепочку небольших веток, каждая из которых строится поверх предыдущей. Для каждого PR в качестве базовой указывается ветка под ним, поэтому ревьюеры видят только diff соответствующего слоя.
- gh-stack можно использовать бесплатно? Какая у него лицензия?
- gh-stack распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- gh-stack всё ещё поддерживается?
- Активно поддерживается. Последний коммит в gh-stack — 7 нояб. 2026 г..
- Для чего можно использовать gh-stack?
- Разбиение крупной функциональности на небольшие PR, которые ревьюеры могут одобрять по одному слою за раз. Обновление среднего слоя стека после замечаний к ревью без ручного перебазирования каждой ветки. Последовательное слияние зависимых PR снизу вверх по стеку.
- Как установить gh-stack?
- Установите расширение с помощью GitHub CLI: gh extension install github/gh-stack Создайте новый стек и переключитесь на первую ветку: gh stack init Добавьте в стек ещё одну ветку: gh stack add api-endpoints Откройте стек пул-реквестов: gh stack submit
- Где скачать gh-stack?
- Исходный код и инструкции по установке — на GitHub: https://github.com/github/gh-stack
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Графический Git-клиент от GitHub для управления репозиториями, ветками и коммитами без командной строки.
Расширение для VS Code с аннотациями Git blame, CodeLens, Commit Graph и инструментами для ревью, rebase и управления ветками и worktree.
Пошаговое руководство для начинающих: как сделать форк, клонировать репозиторий, создать ветку, закоммитить изменения и открыть первый pull request.
Простой терминальный интерфейс для git, который ускоряет подготовку изменений, коммиты, rebase и работу с ветками с помощью клавиатуры.
Git — быстрая распределённая система контроля версий с широким набором команд для высокоуровневых операций и низкоуровневой работы с внутренними механизмами.