Você está chamando recursivamente git
da função. Use command git
para as chamadas internas para que a função não seja usada para elas.
Esta função visa essencialmente:
alias "git log"="git log --name-status"
teria sido possível. Como não é possível aliasar algo com espaços, escolho escrever uma função de shell:
git() {
case $# in
1)
case "$1" in
log)
git log --name-status
;;
*)
git "$@"
;;
esac
;;
*)
git "$@"
;;
esac
}
No entanto, sempre que executo isso, o emulador de terminal trava após ~ 1 segundo.
Qual pode ser o motivo disso?
Estou usando o mintty e o Cygwin.