On Tue, 18 Dec 2012 21:24:03 -0500
wor...@alum.mit.edu (Dale R. Worley) wrote:
> | git-blame - Show what revision and author last modified each
> | line of a file
> That's great! ... But the existence of git-blame means that git can,
> *in practice*, trace the history of an individual file, and even
> individual lines within a file.
True, but your choice of the word "trace" is actually very precise, and
that's what I was talking about in my previous mails in this thread:
Git does not *explicitly* record histories of individual files.
Instead, a line of history in Git is just a series of snapshots of the
repository state linked together to form the parent(s)-child
relationship. Each snapshot in this graph is completely unaware about
which files are contained in its parent snapshot(s).
Hence, like with `git log`, `git blame` traverses the chain of commits,
considering each commit and applying its heuristics to detect file