Linus Torvalds wrote: > On Tue, 25 Apr 2006, Jakub Narebski wrote: >> >> The generic commit links "related" which is fsck-able at least and "note" >> which is not. It is idea somewhat on the level of providing _extended >> attributes_ in VFS in Linux kernel, IMVHO. > > And nobody actually uses extended attributes either, do they? Fedora's SELinux does use them, IIRC. Well, people do use X-* headers in mail (sean's example), and some of them got promoted from X-* to ordinary mail header status. > Plus it's _not_ fsck'able, since the thing doesn't even have any valid > semantics. You guys can't even agree on whether the object must exist or > not. Erm, further on we did agree http://permalink.gmane.org/gmane.comp.version-control.git/19142 (Message-Id: <7vmzeax9gj.fsf@xxxxxxxxxxxxxxxxxxxxxxxx>). "related" links means that object must exist. "note" is what name says, just note and doesn't even need to point to object. > For exactly the same reason, git should not track it when a developer says > "I think this commit is related to that commit". It's not hard data, that > has hard and clear semantics. > > Once you start adding data that has no clear semantics, you're screwed. At > that point, it's a "track guesses" game, not a "track contents" game. Well, the best example, i.e. remembering cherry picking has well defined semantic (added when cherry-picking, used when merging, object does need not to exist) but not well defined form. Currently the convention for free-form is used, which has its advantages and disadvantages as pointed out by Junio. [somewhat unrelated note] > Git tracks contents, and the well-defined history of how those contents > came to be. Git does NOT track "additional notes" left by the developer > that have weak semantics. Git does not track when a developer says "I > renamed a file". But I'd like Git to remember when I corrected false positives in "rename" detection during merge, and added undetected automatically renames/file contents copying and/or moving. Whether it would be done by saving the information in commit header, commit free-for, or somewhere else... -- Jakub Narebski Warsaw, Poland - : 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