On Tue, 15 Jan 2008, Junio C Hamano wrote: > > If a non-standard prefix is used by --no-prefix, --src-prefix, > or --dst-prefix options, the resulting diff becomes something > git-apply would not grok. In such a case, we should not trigger > the more strict check git-apply does for patches in "diff --git" > format. I think this is wrong. If we do any git-specific stuff, we need to have that "--git" thing there. That is *not* just limited to the prefix, but to all the other things git diffs can do: renames, mode changes, etc. > Metainformation (e.g. "index", "similarity", etc.) lines will > safely be ignored by patch and git-apply (even when the latter > parses a non-git diff output), so this patch does not bother > stripping them away. It's not necessarily safe to ignore some of them, like the rename info. If you see a rename patch and don't understand it as a rename, it's pointless. So I would argue that you need something stronger to say "don't do a git diff", and that should also disallow rename detection at a minimum. Quite frankly, any program that is so stupid as to not accept current git patches (ie TortoiseSVN), then we damn well shouldn't just disable the most trivial part of it. We should make sure that we do not enable *any* of the rather important extensions: even if ToirtoiseSVN would ignore them, if ignoring them means that it mis-understands the diff, it shouldn't be allowed at all. So maybe a --standard-diff option that removes the "--git" part, but also removes everything else. And add a "--index-header" to enable the (totally *idiotic*) "Index:" prefix that is such a total waste of time that it's not even funny (ie it cannot do renames, which makes it entirely pointless). We do not want to make it particularly easy for people to create mind-bogglingly stupid diff output. Linus - 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