Вы, кажется, установили, git
что, я считаю, отвечает за изменения, которые вы видите, когда он добавляет $(__git_ps1 " >> %s")
в середине вашей строки PS1.
PROMPT_COMMAND работает, потому что он выполняется позже и многократно каждый раз, когда Bash отображает приглашение, поэтому отменяет изменение.
Вы должны убедиться, что вы устанавливаете PS1 после того, как git сделал свое дело, но я не могу сказать, где он находится.
Примечание. См. Ответ StackOverflow .