Просмотреть патчи git по почте без выхода из Thunderbird: старомодный, но всё ещё живой способ

Разработка & Кодинг Jul 20, 2026В закладки

Просмотреть патчи git по почте без выхода из Thunderbird: старомодный, но всё ещё живой способ
Иллюстрация : Momiji Shirogane

Корбен возвращает в центр внимания рабочий процесс, который многие молодые разработчики полностью игнорируют: ревью патчей по электронной почте в стиле ядра Linux. Один проект позволяет делать это, не выходя из Thunderbird — и это более актуально, чем может показаться.

Конкретный случай: участие в разработке ядра Linux, git, Emacs

Для разработчика, знакомого только с GitHub и GitLab, вопрос покажется странным: «с какой стати рецензировать код по email?» Конкретный ответ: потому что проекты, формирующие значительную часть современной IT — ядро Linux (LKML), сам git, Emacs, U-Boot, QEMU, Postgres (частично), большинство проектов BSDне используют веб-форжи для приёма изменений. Исторический workflow выглядит так:

  1. Контрибьютор выполняет git format-patch, чтобы преобразовать свою ветку в набор файлов .patch, по одному на коммит.
  2. Он отправляет эти патчи на публичный список рассылки с помощью git send-email.
  3. Мейнтейнеры и ревьюеры отвечают внутри письма: цитируют строки кода патча с префиксом > и пишут свои комментарии прямо под ними. Это ревью кода, но в почтовом клиенте.
  4. Контрибьютор отправляет v2, v3 и так далее. В конце мейнтейнер интегрирует серию патчей с помощью git am.

У этого процесса есть объективные преимущества, которых нет у веб-форж: публичные архивы, индексируемые поисковиками (lore.kernel.org, marc.info), участие без аккаунта на GitHub, соблюдение принципа «напиши один раз, прочитай много раз».

Инструмент от Корбена: thunderbird-patch-review

Удобство ревью на GitHub — подсветка синтаксиса, комментарии по строкам, кнопки Approve/Request changes — создало поколение, которое считает ревью по email нечитаемым. В результате порог входа для участия в ядре Linux растёт, хотя git send-email — это проверенный временем инструмент.

Marc Coquand хотел вовлечь свою команду в этот workflow, не заставляя их использовать экзотические инструменты. Он разработал thunderbird-patch-review, расширение для Thunderbird: когда приходит письмо с серией патчей, расширение предлагает кнопку для открытия удобного окна ревью — подсветка патчей, переход к целевому файлу, локальное применение патча для тестирования, ответ inline с правильным форматом цитирования. Идея не в том, чтобы заменить GitHub, а в том, чтобы иметь возможность участвовать в проектах, которые его не используют, не страдая от неудобств.

Чтобы найти репозиторий и текущую версию, смотрите статью Корбена (ссылка в источнике), которая напрямую ведёт к репозиторию Марка Коукванда — вместо того чтобы цитировать URL из памяти.

Как это работает с точки зрения инструментария

Чтобы воссоздать полный pipeline, помимо расширения для Thunderbird:

  • Настроить SMTP в git: git config sendemail.smtpServer <server>.
  • Подготовить серию патчей с cover letter и правильным тредингом: git format-patch -N HEAD~M с опциями cover-letter (два дефиса, за которыми следует cover-letter) и thread (два дефиса, за которыми следует thread).
  • Отправить серию: git send-email с опциями to=list@vger.kernel.org и cc=maintainer@example.org (каждая из которых предваряется двумя дефисами).
  • На стороне получения: git am < email.mbox для применения полученной серии.

Полностью децентрализованный workflow, не зависящий от третьих лиц. Документация по теме — git send-email(1) на сайте git-scm.com.

Что нужно запомнить

  • Workflow с email никуда не делся и не является маргинальным: это стандарт для ядра, git, Emacs, BSD.
  • thunderbird-patch-review от Marc Coquand позволяет разработчику, привыкшему к GitHub, участвовать в таких проектах, не меняя полностью свой подход.
  • Чтобы попробовать: настроить исходящий SMTP, попробовать git send-email с тривиальным изменением (например, опечатка в документации ядра — LKML удивительно дружелюбна к первым чистым патчам).
  • Философский бонус: это полезное упражнение для повышения грамотности в git — понимание, что email-патч и коммит git — почти один и тот же объект, что проясняет многие аспекты работы с git.
Resources

Статья создана искусственным интеллектом и проверена под редакционным контролем человека.

Наша редакция
Была ли статья полезной?

10 чел. оценили эту статью

Нравится
K
Kaito KuroganeSenior Dev Writer
Senior polyvalent developer, backend Go + frontend TS, open source contributor.
Поделиться:
LIVERadio Geek Kitsune
Нажми и слушай — один звук для всех
0··
// Расписание
// all stations
// поделиться треком →
Темы
Обзор
Информация