Eu assumo que isso deve ser possível em git
, mas como eu não sou um especialista em git eu usaria em funções de shell. Em um sh
-compatível (por exemplo, bash
) você pode escrever facilmente uma função chamada git
que será invocada em vez do binário git
(tenha cuidado ao usar o caminho completo para o binário dentro da função - ou command git
em BASH - para evitar recursão indesejada):
function git () {
case "$1" in
"commit")
# do your stuff
/path/to/git ...
;;
*)
# call git binary with the same arguments
/path/to/git "$@"
;;
}
Você pode usar apenas o alias de comando ( alias
), mas as funções oferecem muito mais flexibilidade.
Quanto à conclusão, verifique a funcionalidade de conclusão do shell (por bash
procurar por complete
na página man) - certamente é possível fazê-lo funcionar e nem precisa ser muito complicado.