Как использовать git am для применения патчей из сообщений электронной почты?
Я довольно хорошо знаком с git(основные вещи atleast-ветки, слияния, сотрудничество с коллегами и т. Д.), Но на днях мой друг сказал мне, что мы можем использовать git с нашим почтовым ящиком. В пакет входит git-am ( страница руководства здесь).
Пожалуйста, кто-нибудь может помочь мне начать работу с git-am.
4 ответа
Другая важная вещь заключается в git format-patch
, Это создаст патчи для отправки по электронной почте; затем они могут быть отправлены с помощью git send-email
или напрямую. Например:
# create a patch for each commit from origin's master to yours
git format-patch origin/master..master
# now send them...
# there are a zillion options here, and also some configuration; read the man page
git send-email --to=maintainer@project.com --from=me@here.com ... *.patch
git am
будет принимать патчи, созданные format-patch
и применять их последовательно, например:
git am *.patch
Вам нужно будет выяснить, как экспортировать патчи в формате mbox из своего почтового клиента, хотя я полагаю, что вы также можете просто отправить их в виде вложений или передать их напрямую.
Вы можете попробовать это самостоятельно в одном хранилище, чтобы увидеть, как это работает. Создайте набор исправлений, как указано выше, затем проверьте отправную точку и используйте git am
применить патчи.
Лоскутное решение
https://github.com/getpatchwork/patchwork
Поскольку никто, кажется, не знает, как конвертировать электронные письма в mbox с помощью легкодоступных инструментов, многие из этих краеугольных проектов проектов динозавров имеют связанный, иногда официально рекомендованный экземпляр лоскутной работы, многие из которых размещены на https://patchwork.ozlabs.org/ например:
- https://patchwork.kernel.org/ ядро Linux
- https://patchwork.ozlabs.org/project/qemu-devel/list/ QEMU
- https://patchwork.ozlabs.org/project/gcc/list/ GCC, который включает в себя GDB, который является вашим исходным вариантом использования
- https://patchwork.ozlabs.org/project/glibc/list/ glibc
Пэчворк подписывается на список и анализирует патчи, сгенерированные git send-email
и позволяет загрузить патч.
Так что да, еще один инструментальный слой поверх электронной почты...
Экспорт Thunderbird в mbox
На вопрос: Какой самый простой способ применить серию патчей git от Thunderbird Пока нет ответа.
Смотрите также
Вам нужен почтовый клиент, который может экспортировать почту как файл mbox. Экспортируйте письма и запускайте git-am your-mbox-file
, Это сделано.
Если список рассылки для проекта, из которого вы хотите применить исправления, использует общедоступный почтовый ящик, что имеет место для большинства подпроектов Linux и Git, вы можете использоватьb4 am
инструмент для загрузки самой последней версии серии патчей и передачи ее по
git am
:
b4 am -o- $url | git am
где
url
- это URL-адрес любого сообщения в цепочке.