login
Header Space

 
 

git-PS1 bash prompt setting

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <git@...>
Cc: Theodore Tso <tytso@...>
Date: Thursday, November 16, 2006 - 2:01 pm

Ted mentioned in the wart thread that having multiple branches per repo
means that the standard bash prompt isn't as much help as it could be.

For what it's worth i'll post a little script i've been using for quite
some time that helps a little.  It's called git-PS1 and is used by
including it in your bash PS1 variable like so:

export PS1='$(git-PS1 "[\u@\h \W]\$ ")'

If you're not in a git repo, the bash prompt you pass on the git-PS1
command line is used instead.  If you are in a git repo, you'll get
the following as a prompt:

[branch!repo/relative/path]$ 

Where "repo" is the basename of the path to the root of your repo.
An example would look like this:

[master!linus-2.6/Documentation/vm]$ 

Cheers,
Sean


#!/bin/bash
BR=$(git symbolic-ref HEAD 2>/dev/null) || { echo "$@" ; exit ; }
BR=${BR#refs/heads/}
REL=$(git rev-parse --show-prefix) 
REL="${REL//%\/}"
LOC="${PWD%/$REL}"
echo "[$BR!${LOC/*\/}${REL:+/$REL}]$ "

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
git-PS1 bash prompt setting, Sean, (Thu Nov 16, 2:01 pm)
Re: git-PS1 bash prompt setting, Johannes Schindelin, (Sun Nov 26, 10:27 am)
Re: git-PS1 bash prompt setting, Sean, (Sun Nov 26, 10:42 am)
Re: git-PS1 bash prompt setting, Johannes Schindelin, (Sun Nov 26, 11:18 am)
Re: git-PS1 bash prompt setting, Junio C Hamano, (Thu Nov 16, 2:35 pm)
speck-geostationary