Если бы я получил файл патча, сгенерированный с чем-то вроде git diff rev^ rev
или даже git show -p rev
, как я могу узнать, какие коммиты выводятся?
Я не уверен, что этот вариант использования даже уместен в git, но, отмечая путь к файлу и / или номера ревизии в заголовке патча, включенного в cvs / svn, я получаю теплую расплывчатую информацию о том, что полученный мной патч, или создан, отличается от правильного источника или ревизии.
В частности, если мы рассмотрим заголовок git diff:
diff --git a/lib/blueprint/semantic_class_names.rb b/lib/blueprint/semantic_class_names.rb
index 41bd496..c17af1d 100644
--- a/lib/blueprint/semantic_class_names.rb
+++ b/lib/blueprint/semantic_class_names.rb
Я не могу найти никакой отличительной информации о коммитах, участвующих в этом diff. Есть индексная строка, которую я могу только предположить, что это не сокращенный хеш коммита, а скорее хэш разлитых частей файлов. Это, конечно, не совпадает с соответствующими сигнатурами фиксации.
Если я проверю пару файлов и решу пойти по старому стилю с патчем, отправленным по электронной почте, я не смогу быстро перепроверить, что я разобрал нужные файлы / ревизии перед отправкой патча, который я сделал с быстрый взгляд на заголовок? Я понимаю, что ревизии не так значимы в git, как в cvs / svn из-за распределенной природы, но я единственный, кто не против увидеть хотя бы сокращенную подпись коммита файлов в заголовке?