Почему git AuthorDate отличается от CommitDate?

Я просматриваю свои журналы git и обнаруживаю, что AuthorDate и CommitDate немного отличаются для некоторых моих коммитов:

commit 3a5912f90dc5227f308e99f95152fbee2301c59a
Author:     <hidden>
AuthorDate: Fri Jun 15 10:57:22 2012 +0800
Commit:     <hidden>
CommitDate: Fri Jun 15 11:14:37 2012 +0800

Автор и коммит - это одно и то же я.

Как это происходит? Я озадачен на несколько дней.

Их больше (происходит в 17 из 341 коммитов):

+------------------------------+-------------------------------+
| from_unixtime(authored_date) | from_unixtime(committed_date) |
+------------------------------+-------------------------------+
| 2012-06-15 10:57:22          | 2012-06-15 11:14:37           |
| 2012-06-15 14:39:54          | 2012-06-15 14:48:57           |
| 2012-06-19 12:28:21          | 2012-06-19 12:29:41           |
| 2012-06-21 18:16:25          | 2012-06-21 18:28:48           |
| 2012-06-26 17:30:54          | 2012-06-26 17:33:55           |
| 2012-07-13 11:41:43          | 2012-07-13 11:42:17           |
| 2012-07-13 11:56:02          | 2012-07-13 12:13:22           |
| 2012-07-13 12:05:09          | 2012-07-13 12:12:24           |
| 2012-07-12 18:38:49          | 2012-07-13 12:26:35           |
| 2012-07-13 11:00:47          | 2012-07-13 12:25:15           |
| 2012-07-16 14:10:54          | 2012-07-16 14:15:01           |
| 2012-07-13 12:56:51          | 2012-07-16 13:49:48           |
| 2012-07-16 14:10:54          | 2012-07-16 14:19:46           |
| 2012-07-24 16:05:05          | 2012-07-24 16:05:48           |
| 2012-07-24 17:42:58          | 2012-07-24 17:43:33           |
| 2012-07-24 17:42:58          | 2012-07-24 17:45:18           |
| 2012-07-26 16:55:40          | 2012-07-26 16:55:53           |
+------------------------------+-------------------------------+
git
71 голос | спросил fossilet 8 AM00000060000004331 2012, 06:50:43

2 ответа


0

дата автора отмечает, когда этот коммит был первоначально сделан (т.е. когда вы закончили git commit). Согласно документам git commit , дату автора можно переопределить с помощью переключателя --date .

Дата фиксации изменяется каждый раз, когда изменяется коммит, например, при перебазировании ветви, в которой находится фиксация, в другую ветку.

То же самое может произойти, если вы сделаете свой коммит и отправите свой патч другому, чтобы применить патч в другом репо: датой автора будет дата вашего git commit, дата принятия будет установлена ​​на ту дату, когда патч будет применен в другом репо.

Если вы отправите патч двум коллегам, будет одна дата автора, но две разные даты фиксации.

Это также упоминается в Git Book :

  

Вам может быть интересно, в чем разница между author и committer . author - это человек, который изначально написал патч, а committer - тот, кто последний применил патч. Итак, если вы отправите патч в проект, и один из основных участников применит патч, вы оба получите кредит - вы как автор и основной участник как коммиттер

ответил eckes 8 AM00000070000002231 2012, 07:55:22
0

Дата автора для фиксации сохраняется в rebase /cherry-pick и т. д. Но дата фиксации изменяется.

ответил Michael Anderson 8 AM00000070000001331 2012, 07:50:13

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132