Re: git-branch --print-current
- From
- demerphq <demerphq@gmail.com>
- Date
- Jan 4, 2009, 12:49 UTC
- Message-ID
- <9b18b3110901040449x65c63d6fo3d9fec9ddd5670c@mail.gmail.com>
- In-Reply-To
- <quack.20090104T0440.lthbpun1bxo@roar.cs.berkeley.edu>
2009/1/4 Karl Chen <quarl@cs.berkeley.edu>:
Show 12 quoted lines
>>>>>> On 2009-01-04 00:21 PST, Arnaud Lacombe writes: > > Arnaud> FWIW, I had this in a stalled modification in a tree, > Arnaud> it just add the '-c' (as "current") option to git > Arnaud> branch. Patch is mostly for the record :/ > > Thanks, glad someone else wanted this too. If we modified > git-symbolic-ref it would probably be less code since it doesn't > have to loop over all branches, though from a UI perspective I > still prefer git-branch. Anyway doesn't look like people like the > idea so how about that git-rev-parse --symbolic-abbrev-name idea > :)
FWIW: I like the idea. Ive always thought that a --current flag to git branch was missing. IOW i should be able to do:
branch=`git branch --current`
and get back a usable branch name. I dont think one should need to rely on awk or sed or scripts to find this out, if only for portability reasons.
Show 10 quoted lines
>
> Arnaud> The main trouble I have with pipe stuff is that it
> Arnaud> forks a process for something that can be done
> Arnaud> natively. Previously, I was using awk(1) to extract
> Arnaud> the current branch:
>
> Arnaud> $ git branch | awk '/^\*/ {print $2}'
>
> Yet another addition to the list of ways to pipeline it, this one
> probably the shortest :)Unfortunately it doesnt work well when you arent on a branch:
$ git branch | awk '/^\*/ {print $2}'
(noSo far two apparently expert git people have given solutions to this problem that don't elegantly handle the edge cases.
That seems to me to be a powerful argument that it is actually more difficult to do than is being represented here on the list, and deserves to be native level git functionality.
Cheers, yves
-- perl -Mre=debug -e "/just|another|perl|hacker/"