Improved git prompt handling
* Improved speed, the first time cd'ing into a git repo the prompt returns much faster (for me at least). * Prompt is now decorated in nested folders within a git repo. No longer check for the '.git' folder.
This commit is contained in:
parent
dfe962246e
commit
dd18924536
12
git.zsh
12
git.zsh
@ -11,16 +11,10 @@ ZSH_THEME_GIT_PROMPT_CLEAN=""
|
|||||||
|
|
||||||
# get the name of the branch we are on
|
# get the name of the branch we are on
|
||||||
function git_prompt_info() {
|
function git_prompt_info() {
|
||||||
if [[ -d .git ]]; then
|
ref=$(git-symbolic-ref HEAD 2> /dev/null) || return
|
||||||
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
|
echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX"
|
||||||
branch=${ref#refs/heads/}
|
|
||||||
CURRENT_BRANCH="$ZSH_THEME_GIT_PROMPT_PREFIX${branch}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX"
|
|
||||||
else
|
|
||||||
CURRENT_BRANCH=''
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo $CURRENT_BRANCH
|
|
||||||
}
|
}
|
||||||
|
|
||||||
parse_git_dirty () {
|
parse_git_dirty () {
|
||||||
if [[ $(git status | tail -n1) != "nothing to commit (working directory clean)" ]]; then
|
if [[ $(git status | tail -n1) != "nothing to commit (working directory clean)" ]]; then
|
||||||
echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
|
echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
|
||||||
|
Reference in New Issue
Block a user