Ответ 1
Крюк - это исполняемая оболочка script. Вы можете выполнить его из командной строки, если вам нужно запустить его вручную, хотя построение ожидаемого stdin
inuput несколько утомительно, если в вашем репо есть несколько голов (т.е. Вы используете ветки). Для этого должна быть команда низкого уровня, но я этого не знаю.
Предполагая оболочку bash и одну ветвь в вашем реестре git
# Print the log with full hashes and commit subject, so that you can
# figure out which hashes to use for the FROM and TO range.
/path/to/repo$ git log --pretty=%H\ %s
# assuming the FROM commit identifies as 999988887777
# and te TO commit identifies as 000011112222
# (Note: use the full length hashes; I've shortened them for the example)
/path/to/repo$ .git/hooks/post-receive <<MARK
999988887777 000011112222 refs/heads/master
MARK
... вышеупомянутое должно работать так же, как реальная вещь.