Дата фиксации Git

197

Помимо анализа журнала git для строки даты, есть ли собственный способ Git сообщить дату определенной фиксации?

Самер Буна
источник
1
Хорошие материалы: git-scm.com/docs/pretty-formats
Невин Чен

Ответы:

286

Вы можете использовать команду show . Пытаться

git show -s --format=%ci <commit>

Также доступны другие форматы строки даты. Подробности смотрите на странице руководства .

Тим Хениган
источник
19
Чтобы получить коммит без разницы, используйте log -1вместо show.
Джош Ли
39
Или добавьте к команде '-s':git show -s --format="%ci" <commit>
aprock
6
Для будущих пользователей: вы можете просмотреть дату автора с помощью %ai.
user541686
4
чтобы получить только временную метку unix: используйте git show -s --format =% ct <commit>
xiaoweiz
2
Если вам нужен другой формат даты, вы можете использовать git show -s --format=%cd --date=short <commit>(например, 2016-11-02) или git show -s --format=%cd --date=short <commit>или git show -s --format=%cd --date=format:%Y <commit>(в этом примере будет напечатан только год). Подробнее см. В этом ответе .
Amoebe 02
27

Если вы хотите видеть только дату тега , сделайте следующее:

git show -s --format=%ci <mytagname>^{commit}

который дает: 2013-11-06 13:22:37 +0100

Или сделайте:

git show -s --format=%ct <mytagname>^{commit}

что дает временную метку UNIX: 1383740557

Маркус Филип
источник
19

Если вы хотите иметь метку времени без часового пояса, но местный часовой пояс, сделайте

git log -1 --format=%cd --date=local

Что дает это в зависимости от вашего местоположения

Mon Sep 28 12:07:37 2015
Schoetbi
источник
1

если у вас проблемы с командой windows cmd и .bat, просто избегайте таких процентов

git show -s --format=%%ct

Символ% имеет особое значение для параметров командной строки и параметров FOR. Чтобы рассматривать процент как обычный символ, удвойте его: %%

Синтаксис: escape-символы, разделители и кавычки

Андрей Тихонов
источник