Вы ничего не указали о github, поэтому я предполагаю, что здесь обычный git.
Имея это в виду, есть несколько способов, которые вы можете попробовать:
-
Вместо использования git push
приучите себя использовать сценарий, который вы напишете (вставьте его в псевдоним или что-то в этом роде). Например, alias gp = <run maven> <check result> <if ok> -> push, otherwise <fail>
Другой способ - использовать хук pre-pu sh git (доступен с версии 1.8.2). При таком подходе вы создадите скрипт в своем git репозиторий, и он будет выполняться, когда вы сделаете git push
, прямо перед фактической отправкой данных на сервер. Реализация ловушки в основном будет делать то же самое, что я описал в пункте 1.
См. Этот тесно связанный поток SO.