Когда вы выбираете коммит, он фиксирует результат с использованием всех метаданных коммита, а не только различий, которые он представляет - вы получите исходное сообщение о коммите и автора. Ваш патч-конвейер получит вам требуемое содержимое рабочего дерева, но затем вам нужно будет зафиксировать его самостоятельно, надеюсь, с помощью git commit -c <original-commit>
, чтобы скопировать метаданные, как это сделал бы cherry-pick. Cherry-pick также имеет несколько дополнительных опций, которые могут быть полезны, и может принимать несколько коммитов (возможно, указанных в качестве диапазона списка оборотов). patch
явно не поддерживает ничего из этого.
Я не уверен в вашем утверждении, что результат был "чище". Вы предлагаете, чтобы git применил diff иначе, чем patch
?