threads / discuss / 2585

current HEAD in bash prompt

Subject: current HEAD in bash prompt

## tl;dr

2 messages between Nov 17, 2005 and Nov 18, 2005.

replies: 1people: 2as markdown or json

Ben Clifford· Nov 17, 2005, 08:39 UTC · lore

After getting a bit confused when having too many branches, and for people who don't mind extra forks and like too much info in their prompt, I've recently started using this:

export PS1='!\! [\j] \u@\h:\w$(output-git-head-or-blank)\$ '
where output-git-head-or-blank is:
#!/bin/bash

PS_GIT=$(git-symbolic-ref HEAD 2>/dev/null) && echo "[$(basename $PS_GIT)]" && exit

# else output nothing

When in a non-git directory, you get a non-git prompt (of course, modify this to whatever you want)

!502 [0] benc@piva:~$

and when in a git directory you get (a truncated form of) whatever today's head points at:

!502 [0] benc@piva:~$ cd src/globe !503 [0] benc@piva:~/src/globe[master]$

-- 
Ben • ベン • Бэн • 벤 • 班明
http://www.hawaga.org.uk/ben/
My email is high latency but best way to contact me. Alternatively,  
SMS number(s) at above URL.
Alex Riesen· Nov 18, 2005, 14:57 UTC · re: Ben Clifford · lore

Re: current HEAD in bash prompt

On 11/17/05, Ben Clifford <benc@hawaga.org.uk> wrote:
Show 6 quoted lines
> After getting a bit confused when having too many branches, and for
> people who don't mind extra forks and like too much info in their
> prompt, I've recently started using this:
>
> export PS1='!\! [\j] \u@\h:\w$(output-git-head-or-blank)\$ '
>
I did almost the same, but in .c (attached).

← back to recent threads