On Wed, 20 Jun 2007, Junio C Hamano wrote:
Your example, "a/test b/foo" vs "b/test b/foo", can be and IS
parsed unambiguously by git-apply (you can try "git apply
--stat" your example). IOW, the code to correctly handle it
already exists ;-)
Well, in all fairness, I *did* hate having to write the code to handle all
the name handling in git-apply.
Escaping whitespace (or at least giving the _option_ to do so) might well
be a good way to not have to be as smart as git-apply is.
git-apply didn't have that option, since git-apply has as one primary
motivation the need to be able to handle patches that come from non-git
sources, so git-apply goes to quite some extreme lengths to try to make
sense of an inherently rather ambiguous format (that the git diffs then
*made* unambiguous, but using pretty subtle rules in order to stay
compatible).
Some maybe we should have some generic method of asking for any filename
to be quoted in particular ways?
Linus