Sem saber exatamente o conteúdo de suas variáveis de cor, eu acho que você precisa mudar isso
PS1="\[${txtblu}\u\[${txtmag}@\h\[${reset}:\[\W\]\[\$(grb_git_prompt)\$ "
para isso
PS1="\[3${txtblu}\]\u\[3${txtmag}\]@\h\[3${reset}\]:\W\$(grb_git_prompt)\$ "
E mude isso
local SINCE_LAST_COMMIT="${COLOR}$(minutes_since_last_commit)${reset}"
local GIT_PROMPT='__git_ps1 "[3${txtgrn}%s3${reset}|3${SINCE_LAST_COMMIT}]"'
echo ${GIT_PROMPT}
para
local SINCE_LAST_COMMIT="\[3${COLOR}\]${MINUTES_SINCE_LAST_COMMIT}\[3${reset}\]"
echo "$(__git_ps1 "\[3${txtgrn}\]%s\[3${reset}\]|${SINCE_LAST_COMMIT}")"
Todos os códigos de cores precisam ser cercados individualmente por \[...\]