On Fri, Jun 1, 2012 at 12:55 AM, Kent Fredric <kentfredric@...> wrote:
>
> Hmm, thats annoying. Almost makes me wish it was the trees that were
> signed, not the commits.
I think it is the tree that is signed, but that changes too.
Rebasing re-applies the same diff to the new head to give you a new
set of commits. When you apply the same diff to a different parent
you end up with a different tree, so the tree signature won't be the
same either.
Keep in mind that git does not store a long train of diffs. It stores
a long chain of complete trees, and the diffs get calculated if you
ask for them. Since it is COW you only re-store files that actually
change, and incorporate others by reference. However, if you have a
1MB file that you change 1 line on 100x, you'll end up with 100MB of
files. Of course, when they get packed I'd hope that they'd compress
well.
Rich
|