Подскажите, как я могу перехватывать сообщения которые гит отдаёт в консоль, так чтобы: 1. Читать, что в сообщении -- и предпринимать действия. 2. Перехватывать само сообщение, и лишние отправлять в /dev/null
Т.е., например, я скриптом делаю запрос git pull и если приходит сообщение "Already up-to-date"
то не отдавать его в консоль, а перехватывать и удалять?
Насчет git hooks. Когда вы выполняете команду git checkout выполняется файл который находится по пути <папка_с_репозиторием>/.git/hooks/post-checkout. Вместо скрипта можно разместить python cкрипт сделав его исполняемым (chmox +x .git/hooks/post-checkout) и в первой строчки прописать #!/usr/bin/env python. Если же нужно просто обработать вывод какой либо git команды то тут можно использовать unix pipe ( | ).
Например вам нужно обработать вывод команды git status. Вы пишете скрипт со следующим содержанием:
import fileinput
for line in fileinput.input():
<здесь_обрабатываем_вывод_построчно>