Re: [PATCH 0/2] (experimental) diff --quote-path-with-sp
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 16, 2021, 05:31 UTC
- Message-ID
- <xmqqh7elulvc.fsf@gitster.g>
- In-Reply-To
- <YUK7Bl9uzNE1YErg@tilde.club>
Gwyneth Morgan <gwymor@tilde.club> writes:
Show 22 quoted lines
> On 2021-09-15 15:33:14-0700, Junio C Hamano wrote: >> Long time ago, we had a discussion with GNU patch/diff maintainer >> and agreed that pathnames with certain "difficult" bytes needs to be >> quoted to ensure the resulting patch is machine parseable in an >> unambiguous way [*1*]. Recently, we saw a report that found that >> GNU patch is unhappy with our diff output for a path with SP in it >> [*2*]. >> >> With this experimental option, the beginning part of the patch >> output will have pathnames with SP in them enclosed inside a pair of >> double quotes, like so: >> >> diff --git "a/A Name" "b/A Name" >> --- "a/A Name" >> +++ "b/A Name" > > I believe GNU patch is fine with unquoted spaces in the "--- a/path" > and "+++ b/path", and only has an issue with unquoted spaces in the > "diff --git" line. busybox patch does seem to have an issue with quoted > filenames in the "---" and "+++" lines but is fine if those lines are > unquoted. Maybe we could leave spaces unquoted in those lines, only > quoted if there's some other character that needs it.
Well, if they are so inconsistent, perhaps we shouldn't bend over backwards to cater to them, I would have to say. I do not think we want to break the convention that these a/ & b/ labeled paths are spelled exactly the same way, only to please external tools.
Thanks for a quick report.