# [PATCH] gitk: show detached HEAD if --all is specified

3 messages from 2014-09-09 to 2014-09-09. Participants: Max Kirillov, Junio C Hamano.
Thread: https://gitlist.dev/t/37523

## Max Kirillov, 2014-09-09 07:29

Subject: [PATCH] gitk: show detached HEAD if --all is specified
Message-ID: <1410247756-10879-1-git-send-email-max@max630.net>
URL: https://gitlist.dev/e/1410247756-10879-1-git-send-email-max%40max630.net

```
If HEAD is detached, 'gitk --all' does not show it. This is inconvenient
for frontend program, and for example git log does show the detached HEAD.

gitk uses git rev-parse to find a list of branches to show.
Apparently, the command does not include detached HEAD to output if
--all argument is specified. This has been discussed in [1] and stated
as expected behavior. So rev-parse's parameters should be tuned in gitk.

[1] http://thread.gmane.org/gmane.comp.version-control.git/255996

Signed-off-by: Max Kirillov <max@max630.net>
---
 gitk | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gitk b/gitk
index c8df35d..a5d98bf 100755
--- a/gitk
+++ b/gitk
@@ -294,6 +294,8 @@ proc parseviewrevs {view revs} {
 
     if {$revs eq {}} {
 	set revs HEAD
+    } elseif {[lsearch -exact $revs --all] >= 0} {
+	lappend revs HEAD
     }
     if {[catch {set ids [eval exec git rev-parse $revs]} err]} {
 	# we get stdout followed by stderr in $err
-- 
2.0.1.1697.g73c6810

```

## Junio C Hamano, 2014-09-09 17:02

Subject: Re: [PATCH] gitk: show detached HEAD if --all is specified
Message-ID: <xmqqppf4loaq.fsf@gitster.dls.corp.google.com>
URL: https://gitlist.dev/e/xmqqppf4loaq.fsf%40gitster.dls.corp.google.com
In-Reply-To: <1410247756-10879-1-git-send-email-max@max630.net>

```
Max Kirillov <max@max630.net> writes:

> If HEAD is detached, 'gitk --all' does not show it. This is inconvenient
> for frontend program, and for example git log does show the detached HEAD.

"git log" does use the same revision machinery as rev-parse uses
internally to parse its command line arguments.  What does it do
differently?

```

## Junio C Hamano, 2014-09-09 17:04

Subject: Re: [PATCH] gitk: show detached HEAD if --all is specified
Message-ID: <xmqqlhpslo8p.fsf@gitster.dls.corp.google.com>
URL: https://gitlist.dev/e/xmqqlhpslo8p.fsf%40gitster.dls.corp.google.com
In-Reply-To: <xmqqppf4loaq.fsf@gitster.dls.corp.google.com>

```
Junio C Hamano <gitster@pobox.com> writes:

> Max Kirillov <max@max630.net> writes:
>
>> If HEAD is detached, 'gitk --all' does not show it. This is inconvenient
>> for frontend program, and for example git log does show the detached HEAD.
>
> "git log" does use the same revision machinery as rev-parse uses
> internally to parse its command line arguments.  What does it do
> differently?

Ah, nevermind.  I misremembered that rev-parse does not use the
revision machinery.

```
