Primeiro configure um trap na sessão para o comportamento de saída:
trap ~/.logout EXIT
Se você quiser, pode adicionar esse comportamento de trap ao bashrc e, em seguida, o script .logout será executado toda vez que os usuários tentarem sair do shell.
E então você pode escrever o script .logout:
#!/bin/bash
cd /path/to/git/working/project
if [ "$( git status | wc -l )" -gt 5 ]
then
echo "Check in your work before you leave."
bash
fi
Então, quando você tentar sair da sessão, o script .logout será executado e o bash aparecerá para verificar se o usuário faz a coisa certa. Se os usuários fizerem o que estiver certo com o git, a sessão terminará normalmente.