# 1) Copy this file to somewhere (e.g. ~/.git-prompt.sh).
# 2) Add the following line to your .bashrc/.zshrc:
# source ~/.git-prompt.sh
- # 3a) In ~/.bashrc set PROMPT_COMMAND=__git_ps1
- # To customize the prompt, provide start/end arguments
- # PROMPT_COMMAND='__git_ps1 "\u@\h:\w" "\\\$ "'
- # 3b) Alternatively change your PS1 to call __git_ps1 as
+ # 3a) Change your PS1 to call __git_ps1 as
# command-substitution:
# Bash: PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
# ZSH: PS1='[%n@%m %c$(__git_ps1 " (%s)")]\$ '
- # the optional argument will be used as format string
+ # the optional argument will be used as format string.
+ # 3b) Alternatively, if you are using bash, __git_ps1 can be
+ # used for PROMPT_COMMAND with two parameters, <pre> and
+ # <post>, which are strings you would put in $PS1 before
+ # and after the status string generated by the git-prompt
+ # machinery. e.g.
+ # PROMPT_COMMAND='__git_ps1 "\u@\h:\w" "\\\$ "'
+ # will show username, at-sign, host, colon, cwd, then
+ # various status string, followed by dollar and SP, as
+ # your prompt.
#
# The argument to __git_ps1 will be displayed only if you are currently
# in a git repository. The %s token will be the name of the current
# GIT_PS1_SHOWUPSTREAM, you can override it on a per-repository basis by
# setting the bash.showUpstream config variable.
#
+# If you would like to see more information about the identity of
+# commits checked out as a detached HEAD, set GIT_PS1_DESCRIBE_STYLE
+# to one of these values:
+#
+# contains relative to newer annotated tag (v1.6.3.2~35)
+# branch relative to newer tag or branch (master~4)
+# describe relative to older annotated tag (v1.6.3.1-13-gdd42c2f)
+# default exactly matching tag
+#
# If you would like a colored hint about the current dirty state, set
# GIT_PS1_SHOWCOLORHINTS to a nonempty value. The colors are based on
# the colored output of "git status -sb".
-#
+
# __gitdir accepts 0 or 1 arguments (i.e., location)
# returns location of .git repo
__gitdir ()