В bash я использую gitprompt для отображения текущего состояния моего git-репозитория, поэтому мой PS0 выглядит следующим образом: [время] [имя репо] [текущий путь] [количество добавленных / измененных файлов] $ Thisустанавливается в ~ / .bashrc, где я экспортирую PROMPT_COMMAND
export PROMPT_COMMAND=$PROMPT_COMMAND';export PS1=$(gitprompt.pl c=\+ u=\~ f=\* A=\^ B=\\\\ F=\ \>\> statuscount=1)'
Я также использую экран (который может вступить в игру в этом вопросе).Когда я создаю новое окно экрана, он автоматически получает исходный файл .bashrc, поэтому мой PS0 обновляется с последним статусом git для этого репозитория, к сожалению, это единственный раз, когда мой PS0 обновляется со статусом git.
Как бы янастроить это так, чтобы мой статус git обновлялся каждый раз, когда я запускаю команду в терминале или только для определенных команд?
Мне нужно будет запускать статус git только при закрытии файла, перемещении, удалении или копировании;поэтому, если бы я мог настроить приглашение на запуск только для этих команд, это было бы лучше, но я бы согласился на то, чтобы оно выполнялось для каждой команды bash (без привязки его к моему ключу возврата).
Вот мой весьподскажите в ~ / .bashrc
export PS0='\[\e[0;32m\][\t]\[\e[1m\][\h]\[\e[0;1m\][\w]\[\e[30;1m\]%{\[\e[1;32m\][%b]\[\e[0m\][%c%u%f%t]%}%{[%B%A%F]%}\[\e[0m\]\u\$ '
PS1=$(gitprompt.pl c=\+ u=\~ f=\* A=\^ B=\\\\ F=\ \>\> statuscount=1)
export PROMPT_COMMAND=$PROMPT_COMMAND';export $PS1'