Re: git-branch --print-current
- From
- demerphq <demerphq@gmail.com>
- Date
- Jan 4, 2009, 13:35 UTC
- Message-ID
- <9b18b3110901040535m1f67cb7er95823d31443ee971@mail.gmail.com>
- In-Reply-To
- <7vzli73b1g.fsf@gitster.siamese.dyndns.org>
2009/1/4 Junio C Hamano <gitster@pobox.com>:
Show 35 quoted lines
> Karl Chen <quarl@cs.berkeley.edu> writes: > >> For example: Google for how to add the name of the git branch to >> the bash prompt and you'll find countless examples of people using >> git-branch. And they're all different, so people aren't just >> blindly copying one guy; here is a small sample: >> ... >> There were a few using git-symbolic-ref but most used git-branch. > > That is a good point about user education, and is a demonstration why a > new option to cover a very narrow-special case to symbolic-ref will not > help the situation. People will add their own embellishments around the > name of the branch anyway, and the most generic symbolic-ref output is > just as useful as a special case option to show without refs/heads/. > > What you quoted are all inferior implementations of showing the name of > the current branch in the bash prompt. The most correct way (in the sense > that it won't be broken in future git) is always found in the bash > completion script in contrib/completion/git-completion.bash and it reads: > > PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ ' > > You can of course change this to suit your taste. For example, here is a > variant I personally use: > > PS1=': \h \W$(__git_ps1 "/%s"); ' > > The point is that __git_ps1 shell function is defined to be used for this > exact purpose and is documented in the completion script. > > Besides showing the current branch, it knows how to interpret the various > state clues git operations leave in the repository and the work tree, and > reminds them what you are in the middle of (e.g. applying patch series > using "git am", rebasing interactively, resolving conflicts after a merge > did not autoresolve, etc.), and also knows how to show the detached HEAD.
The version im using, from git version 1.6.0.4.724.ga0d3a produces the following error:
cut: ./HEAD: No such file or directory
when in the .git/refs directory.
Cheers, yves
-- perl -Mre=debug -e "/just|another|perl|hacker/"