summaryrefslogtreecommitdiff
path: root/bash-git-prompt
blob: 4a510ba56db3e8a06d85a7c3ca83a825a6387d24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/bash

PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}<\t> \[\033[01;32m\]\u\[\033[00m\]@\[\033[01;33m\]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]'

set -o pipefail

if branch=$(git branch 2>/dev/null | grep '\*' | cut -d' ' -f2)
then
  if git status --porcelain | grep -q "^.\S"
  then
    PS1="$PS1 \[\033[01;31m\]"
  elif git status --porcelain | grep -q "^\S"
  then
    PS1="$PS1 \[\033[01;33m\]"
  else
    PS1="$PS1 \[\033[01;32m\]"
  fi
  PS1="$PS1$branch\[\033[00m\]\$ "
else
  PS1="$PS1\$ "
fi