threads / bug / 28527

[BUG?] gitk assumes initial commit is empty

Subject: [BUG?] gitk assumes initial commit is empty

## tl;dr

2 messages between Sep 29, 2011 and Sep 29, 2011.

replies: 1people: 2as markdown or json

Zbigniew Jędrzejewski-Szmek· Sep 29, 2011, 14:33 UTC · lore

I was looking at gitk display for git itself, and scrolling all the way down to initial commit show this:

Author: Linus Torvalds <torvalds@ppc970.osdl.org>  2005-04-08 00:13:13
Committer: Linus Torvalds <torvalds@ppc970.osdl.org>  2005-04-08 00:13:13
Child:  8bc9a0c769ac1df7820f2dbf8f7b7d64835e3c68 (Add copyright notices.)
    Initial revision of "git", the information manager from hell

with no files added or modified. But e.g. 'git show' shows that files were added in the initial commit:

$ git show e83c5163316f89bfbde7d9ab23ca2e25604af290 --stat
Author: Linus Torvalds <torvalds@ppc970.osdl.org>
Date:   Thu Apr 7 15:13:13 2005 -0700
...
   11 files changed, 1244 insertions(+), 0 deletions(-)

In gitk, the next commit shows changes to some files, like if they existed in the parent commit. So it seems that gitk assumes that initial commit is empty, which doesn't have to be true.

This is with gitk from master.

- Zbyszek

Junio C Hamano· Sep 29, 2011, 16:40 UTC · re: Zbigniew Jędrzejewski-Szmek · lore

Re: [BUG?] gitk assumes initial commit is empty

Zbigniew Jędrzejewski-Szmek  <zbyszek@in.waw.pl> writes:
> In gitk, the next commit shows changes to some files, like if they existed
> in the parent commit. So it seems that gitk assumes that initial commit
> is empty, which doesn't have to be true.
It is not about assuming but by unfortunate design.

In early days, all projects managed by git (except for git itself) had the product of a fairly mature development hsitory in their first commit, and it was deemed unnecessary clutter to show additions of these thousands of paths as a patch.

This was not just about gitk but git itself. "git log" learned to show the patch for the initial commit without requiring --root command line option only at 0f03ca9 (config option log.showroot to show the diff of root commits, 2006-11-23).

These days I think gitk should learn to do the same ;-)

← back to recent threads