# [BUG?] gitk assumes initial commit is empty

2 messages from 2011-09-29 to 2011-09-29. Participants: Zbigniew Jędrzejewski-Szmek, Junio C Hamano.
Thread: https://gitlist.dev/t/28527

## Zbigniew Jędrzejewski-Szmek, 2011-09-29 14:33

Subject: [BUG?] gitk assumes initial commit is empty
Message-ID: <4E8481A2.6060301@in.waw.pl>
URL: https://gitlist.dev/e/4E8481A2.6060301%40in.waw.pl

```
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, 2011-09-29 16:40

Subject: Re: [BUG?] gitk assumes initial commit is empty
Message-ID: <7vwrcrti84.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vwrcrti84.fsf%40alter.siamese.dyndns.org
In-Reply-To: <4E8481A2.6060301@in.waw.pl>

```
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 ;-)

```
