Подтвердить что ты не робот

Какова первая строка вывода git format-patch?

при запуске git format-patch, цель - создать представление электронной почты написанного вами кода. Все идет нормально. Я не эксперт по электронной почте, но мне кажется, что первая строка этого выхода с исправлением формата не находится в стандартном формате заголовка электронной почты...

From de8d128fb520416e0b029c913b3a5ce900d0320c Mon Sep 17 00:00:00 2001
Message-Id: 
From: Christopher Harvey 
Date: Wed, 3 Apr 2013 10:17:52 -0400
Subject: [PATCH 0/3] *** SUBJECT HERE ***
To: Christopher Harvey 

*** BLURB HERE ***

Christopher Harvey (3):
  commit 2
  commit 3
  commit 4

 data | 3 +++
 1 file changed, 3 insertions(+)

-- 
1.7.12.4

что такое From de8d128fb520416e0b029c913b3a5ce900d0320c Mon Sep 17 00:00:00 2001? какова дата? Это выглядит произвольно для меня, и это также мешает мне передать его в sendmail. Я должен вручную удалить эту строку каждый раз, когда хочу отправить патч.

спасибо.

4b9b3361

Ответ 1

От git help format-patch

ОБСУЖДЕНИЕ        Патч, созданный в формате git format-patch, находится в формате почтового ящика UNIX, с        фиксированная "волшебная" отметка времени, указывающая, что файл выводится из        format-patch, а не реальный почтовый ящик, например:

       From 8f72bad1baf19a53459661343e21d6491c3908d3 Mon Sep 17 00:00:00 2001
       From: Tony Luck <[email protected]>
       Date: Tue, 13 Jul 2010 11:42:54 -0700
       Subject: [PATCH] =?UTF-8?q?> > [IA64]=20Put=20ia64=20config=20files=20on=20the=20?=
        =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig=20diet?=
       MIME-Version: 1.0
       Content-Type: text/plain; charset=UTF-8
       Content-Transfer-Encoding: 8bit

Ответ 2

Вывод находится в формате mbox. Вы можете легко разбить первую строку:

git format-patch --stdout <range> | sed 1d

а затем сделайте, как вам угодно, с результатом.

В качестве альтернативы вы можете использовать git для отправки электронной почты. Попробуйте:

git send-mail --smtp-server=<your server> *.patch

Для всех параметров см. GIT Mail-Mail Manpage.

Ответ 3

В качестве приложения к Fredrik answer, вот некоторые важные комментарии Юнио Хамано:

"Mon Sep 17 00:00:00 2001" - просто фальшивая случайная дата, чтобы сделать линию Unix-From распознаваемой обычной MUA и ей нечего делать с вашими объектами commit. Настоящая дата находится в заголовке Date:.

Я как-то попытался изменить его на git birthday (Thu Apr 7 15:13:13 2005 -0700), и я помню, что выяснилось, что некоторые скрипты (или, возможно, MUA) были сломаны и заботились о том, что было до "7"... на строка Unix-From и отбросила это обновление.

Строка "From $SHA1 $magic_timestamp" и другие строки заголовков должны выглядеть так: mbox

Ссылки: 1, 2, 3.

Ответ 4

из wikipedia (https://en.wikipedia.org/wiki/September_17)

2001 - Нью-Йоркская фондовая биржа вновь открылась для торговли после терактов 11 сентября - самого длинного закрытия со времен Великой депрессии.

возможно просто совпадение!