Hi, [I agree on the .gitignore approach; see my other mail in this thread] On Mon, 12 Feb 2007, Linus Torvalds wrote: > Btw, how would I implement this? If I really were energetic enough to > implement it, I would do: > > (a) Add a flag to "git-ls-files" logic to add "type information" in > front. > > Not only do you want this *anyway* for other reasons, but for > binary/text, the thing you actually care most about is "git add", and > it already basically just does "take this file pattern, feed it > through git-ls-files, and add those files". So you'd get it basically > for free. > > It is also fairly easy to add at this stage, because you can simply > look for all the places that work with "info/exclude" and > ".gitignore", and you know that "Ahh, I need to teach these exact > places to understand about attributes". So you'd add an > "add_attributes_from_file()" function etc etc. > > Quite straightforward. In fact, you might be able to use the > gitignore parsing *as*is*, and just teach it about more flags that > just "ignore": both in "struct dir_entry" and in "struct exclude". > > (b) Teach the git-update-index logic about hashing text blobs. > > (c) Profit! Not so fast. In order for this to be _useful_, you also have to have a way to _extract_ the text blobs. Not only for read-tree, but _also_ for diff. It makes no sense at all to have this transformation one-way. For diff, you _might_ want to have a diff beautifier (for example the .odt thing), but read-tree is _really_ important. Ciao, Dscho - 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