-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Linus Torvalds wrote: > in order to realize how well git blame follows both renames _and_ pure > data movement). > > The reason this is a good example is simply the fact that it should > totally silence anybody who still thinks that tracking file identities is > a good thing. It explains well why tracking file identities is just > _stupid_. No need to be aggressive about this. Yes, it's true that file identity doesn't directly solve this problem, but it doesn't prove that an identity-based approach is wrong. In the end, everything comes down to identity of some kind. Because if you're going to apply someone else's changes, you must apply them to the same thing that they changed. Git determines identity based on content, while bzr has the user indicate it. Both approaches work. Bzr supports merging based on line identity (our weave merge, not our knit merge). At the moment, our concept of line identity is based on file identity, but there's no reason it has to stay that way. > You simply couldn't have done that kind of split sanely with file identity > tracking (well, that one only had a single copy, so you could argue that a > file identity tracker with copies could have done it, but the fact is that > (a) they never do and (b) "git blame" can equally well track stuff that > comes from _multiple_ different "file iddentities"). I think you're wrong about that. There's nothing stopping bzr from inferring a file split, or even explicitly recording it. bzr doesn't record copies, because we think there are no sane merge semantics across copies. > So yes, "git blame" is a _hell_ of a lot more powerful than anybody elses > "annotate", as far as I know. I literally suspect that nobody else comes > even close. I notice that blame has an option to limit the annotation to recent history. I can only assume that is for performance reasons. bzr annotate doesn't need a feature like that, because annotations are explicit in bzr's storage format. I expect that even if we were to extend annotate to track content across files, it would still be so fast that we wouldn't need it. Aaron -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFFbGy70F+nu1YWqI0RAt75AKCAy0ALi0IKzqZpgnavJrx97+lhDgCfaMSe fs4Lt77k1/OXC82aFbh5pKg= =/OiA -----END PGP SIGNATURE----- - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html