У меня есть фиксация c. Я хочу получить набор изменений этой точной фиксации c + metainformation и никакой другой. Есть ли более простой способ, чем git log -p c^..c
сделать это?
Git журнал одной ревизии
Ответ 1
Вы можете использовать
git show c
(где c - идентификатор фиксации)
Ответ 2
Ответ Michal Trybus является лучшим для простоты. Но если вы не хотите diff в своем выходе, вы всегда можете сделать что-то вроде:
git log -1 -U c
Это даст вам журнал фиксации, а затем вы будете иметь полный контроль над всеми параметрами ведения журнала git для целей автоматизации. В вашем случае вы сказали, что хотите изменить настройки. Наиболее удобочитаемый для человека способ:
git log --name-status --diff-filter="[A|C|D|M|R|T]" -1 -U c
Или, если вы используете версию git больше 1.8.X, это будет:
git log --name-status --diff-filter="ACDMRT" -1 -U c
Это даст вам результаты, похожие на:
commit {c}
Author: zedoo <[email protected]>
Date: Thu Aug 2 {time-stamp}
{short description}
D zedoo/foo.py
A zedoo/bar.py
Конечно, вы можете отфильтровать любые события, которые вам подходят, и отформатировать возврат по вашему желанию с помощью традиционных команд git -log, которые хорошо описаны здесь.
Ответ 3
git log -p c -1
делает именно это.