Почему бы вам просто не сказать своей команде совершить вызов callgraph?
Например, вы можете создать тег из основной ветви и удалить его. Тэг будет только для того, чтобы позже восстановить основную ветку, любые коммиты в эту ветку будут отклонены (оставив озадаченными разработчиков)
Если вы хотите сделать это через hooks , это возможно - вам понадобится ловушка предварительного получения, которая ожидает на stdin "oldref newref refs /head / master". В хуке предварительного получения, если это для главной ветви - верните ненулевой код выхода, и пуш будет отклонен (оставив озадаченными разработчиков).
Обратите внимание, что вы всегда можете использовать git push -f
для возврата мастера к любому заданному коммиту.