Pytanie jaka jest pierwsza linia wyjścia z patchem git?


podczas działania łatki w formacie git, celem jest utworzenie reprezentacji e-mail kodu, który napisałeś. Jak na razie dobrze. Nie jestem ekspertem od e-maili, ale wydaje mi się, że pierwsza linia tego formatu patch-patch nie ma standardowego formatu nagłówka e-maila ...

Od de8d128fb520416e0b029c913b3a5ce900d0320c Pn. 17 00:00:00 2001
ID wiadomości:
Od: Christopher Harvey
Data: środa, 3 kwietnia 2013 10:17:52 -0400
Temat: [PATCH 0/3] *** PRZEDMIOT TUTAJ ***
Do: Christopher Harvey

*** BLUZKA TUTAJ ***

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

 dane | 3 +++
 1 plik zmieniony, 3 wstawki (+)

-
1.7.12.4

co jest From de8d128fb520416e0b029c913b3a5ce900d0320c Mon Sep 17 00:00:00 2001? jaka jest data? Wydaje mi się to arbitralne, a także uniemożliwia mi wysyłanie go do sendmaila. Muszę ręcznie usunąć tę linię za każdym razem, gdy chcę wysłać łatkę.

dzięki.


18
2018-04-03 14:26


pochodzenie


git log -S 'Mon Sep 17 00:00:00 2001' --all -p --source --reverse -- . ':(exclude)t' pokazuje, że to Hamano dokonał zobowiązania, które wprowadziło magiczną datę, ale nie mówi nic, dlaczego został wybrany. Znacznik czasu UNIX również nie wydaje się być bardzo szczególnym numerem: 1000677600, chociaż jest bardziej schludny niż ciąg. - Ciro Santilli 新疆改造中心 六四事件 法轮功
Również SHA-1 jest tym z zatwierdzenia, ale jest nieco bezużyteczne, ponieważ SHA-1 zmieni się po zastosowaniu z nowym zatwierdzeniem committer i parent. - Ciro Santilli 新疆改造中心 六四事件 法轮功


Odpowiedzi:


Od git help format-patch

DYSKUSJA          Łatka produkowana przez patch-git jest w formacie skrzynki pocztowej UNIX, z          ustalony "magiczny" znacznik czasu wskazujący, że plik jest wyprowadzany z          format-patch zamiast prawdziwej skrzynki pocztowej, jak na przykład:

       From 8f72bad1baf19a53459661343e21d6491c3908d3 Mon Sep 17 00:00:00 2001
       From: Tony Luck <tony.luck@intel.com>
       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

17
2018-04-03 14:35





Dane wyjściowe są w formacie mbox. Możesz łatwo usunąć pierwszą linię za pomocą:

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

a następnie wykonaj to, co chcesz, z wynikiem.

Alternatywnie możesz użyć git sam wysłać e-mail. Próbować:

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

Widzieć GIT Send-Mail Manpage dla wszystkich opcji.


4
2018-04-03 14:40





Jako dodatek do Odpowiedź Fredrika, oto kilka istotnych komentarzy Junio ​​Hamano:

"Mon Sep 17 00:00:00 2001" jest po prostu fałszywą losową datą, która sprawia, że ​​linia Unix-From jest rozpoznawalna MUA i nie ma nic wspólnego z obiektami commit. Prawdziwa data jest włączona Date: nagłówek.

Próbowałem kiedyś zmienić to na urodziny git (Thu Apr 7 15:13:13 2005 -0700) i przypominam sobie, że okazało się, że skrypty niektórych osób (a może MUA) zostały zerwane i dbały o to, co było przed "7" ... na linii Unix-From i odrzuciły tę aktualizację.

The "From $SHA1 $magic_timestamp" linia i inne linie nagłówka są po to, aby wyglądały jak mbox

Spinki do mankietów: 1, 2, 3.


3
2017-11-18 23:07



+1 dla wyceny Hamano. Ale chciałbym, żeby ktoś wyjaśnił dlaczego że wybrano magiczną datę, lub jeśli była po prostu losowa. - Ciro Santilli 新疆改造中心 六四事件 法轮功


z wikipedia (https://en.wikipedia.org/wiki/September_17)

2001 - Nowojorska Giełda Papierów Wartościowych powraca do handlu po zamachach z 11 września, najdłuższym zamknięciu od czasu Wielkiego Kryzysu.

może tylko zbieg okoliczności!


0
2017-08-06 22:07