git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Detached HEAD and "git log --all"
@ 2009-10-22 20:37 Jakub Narebski
  2009-10-23  8:33 ` Michael J Gruber
  2009-10-23  8:36 ` Michael J Gruber
  0 siblings, 2 replies; 3+ messages in thread
From: Jakub Narebski @ 2009-10-22 20:37 UTC (permalink / raw)
  To: git

When discussing differences between concept and implementation
of branches in Git and in Mercurial on StackOverflow[1] (abusing
SO comment system a bit), Steve Losh[2] wrote that he was surprised
by the fact that "git log --all" doesn't include commits made
on detached HEAD.

While documentation clearly states:

  --all  Pretend as if all the refs in `$GIT_DIR/refs/` are listed
         on the command line as <commit>.

and HEAD is in `$GIT_DIR/HEAD`, which is outside `$GIT_DIR/refs/`,
it is nevertheless a bit strange that "git log --all" doesn't list
all (everything).

This is of course only an issue if we are on detached HEAD; I guess
that semantics of `--all` option to git-log predates this feature.

[1] http://stackoverflow.com/questions/1598759/git-and-mercurial-compare-and-contrast/1599930#1599930
[2] http://stevelosh.com/blog/entry/2009/8/30/a-guide-to-branching-in-mercurial/

-- 
Jakub Narębski      http://stackoverflow.com/users/46058/jakub-narebski

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Detached HEAD and "git log --all"
  2009-10-22 20:37 Detached HEAD and "git log --all" Jakub Narebski
@ 2009-10-23  8:33 ` Michael J Gruber
  2009-10-23  8:36 ` Michael J Gruber
  1 sibling, 0 replies; 3+ messages in thread
From: Michael J Gruber @ 2009-10-23  8:33 UTC (permalink / raw)
  To: Jakub Narebski; +Cc: git

Jakub Narebski venit, vidit, dixit 22.10.2009 22:37:
> When discussing differences between concept and implementation
> of branches in Git and in Mercurial on StackOverflow[1] (abusing
> SO comment system a bit), Steve Losh[2] wrote that he was surprised
> by the fact that "git log --all" doesn't include commits made
> on detached HEAD.
> 
> While documentation clearly states:
> 
>   --all  Pretend as if all the refs in `$GIT_DIR/refs/` are listed
>          on the command line as <commit>.
> 
> and HEAD is in `$GIT_DIR/HEAD`, which is outside `$GIT_DIR/refs/`,
> it is nevertheless a bit strange that "git log --all" doesn't list
> all (everything).
> 
> This is of course only an issue if we are on detached HEAD; I guess
> that semantics of `--all` option to git-log predates this feature.
> 
> [1] http://stackoverflow.com/questions/1598759/git-and-mercurial-compare-and-contrast/1599930#1599930
> [2] http://stevelosh.com/blog/entry/2009/8/30/a-guide-to-branching-in-mercurial/
> 

Commit 77abcbd (Let --decorate show HEAD position, 2009-10-12) goes a
little bit in that direction, adding HEAD to the "labels" that
--decorate may use, but not to the list of refs specified by "--all". But:

Well, after playing around a bit: git rev-list --all does list my
detached HEAD, git log --all shows it (which is the same statement, of
course), whether I use --decorate or not. Are you seeing different
behaviour?

git describe --all HEAD does not describe the detached HEAD (other than
v1.6.5-87-g4584daf in my case), which may or may not be desirable
(because describe outputs at most one description, unlike --decorate).

Michael

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Detached HEAD and "git log --all"
  2009-10-22 20:37 Detached HEAD and "git log --all" Jakub Narebski
  2009-10-23  8:33 ` Michael J Gruber
@ 2009-10-23  8:36 ` Michael J Gruber
  1 sibling, 0 replies; 3+ messages in thread
From: Michael J Gruber @ 2009-10-23  8:36 UTC (permalink / raw)
  To: Jakub Narebski; +Cc: git

Jakub Narebski venit, vidit, dixit 22.10.2009 22:37:
> When discussing differences between concept and implementation
> of branches in Git and in Mercurial on StackOverflow[1] (abusing
> SO comment system a bit), Steve Losh[2] wrote that he was surprised
> by the fact that "git log --all" doesn't include commits made
> on detached HEAD.
> 
> While documentation clearly states:
> 
>   --all  Pretend as if all the refs in `$GIT_DIR/refs/` are listed
>          on the command line as <commit>.
> 
> and HEAD is in `$GIT_DIR/HEAD`, which is outside `$GIT_DIR/refs/`,
> it is nevertheless a bit strange that "git log --all" doesn't list
> all (everything).
> 
> This is of course only an issue if we are on detached HEAD; I guess
> that semantics of `--all` option to git-log predates this feature.
> 
> [1] http://stackoverflow.com/questions/1598759/git-and-mercurial-compare-and-contrast/1599930#1599930
> [2] http://stevelosh.com/blog/entry/2009/8/30/a-guide-to-branching-in-mercurial/
> 

...OK, finally found it: Dscho did just that in f0298cf (revision
walker: include a detached HEAD in --all, 2009-01-16) which is in
v1.6.1.3 and later.

Cheers,
Michael

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-10-23  8:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-22 20:37 Detached HEAD and "git log --all" Jakub Narebski
2009-10-23  8:33 ` Michael J Gruber
2009-10-23  8:36 ` Michael J Gruber

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).