diff options
Diffstat (limited to 'templates/.zsh/functions/git-branches.zsh')
-rw-r--r-- | templates/.zsh/functions/git-branches.zsh | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/templates/.zsh/functions/git-branches.zsh b/templates/.zsh/functions/git-branches.zsh new file mode 100644 index 0000000..4636cab --- /dev/null +++ b/templates/.zsh/functions/git-branches.zsh @@ -0,0 +1,23 @@ +green=`tput setaf 2` +reset=`tput sgr0` + +git-branches() { + set -f + git branch | while read line; do + current=" " + name=${line##\* } ## removes leading * for current + + if [ ! "$name" = "$line" ]; then + current="${green}* " + fi + + description=`git config "branch.$name.description"` + + if [ "$description" != "" ]; then + description=" : $description" + fi + + echo "${reset}${current}${name}${description}${reset}" + done + set +f +} |