Jeff King <peff@xxxxxxxx> writes: > On Wed, Mar 08, 2023 at 09:15:53PM +0100, Alejandro Colomar wrote: > >> I had the following error already a few times, when some contributors, >> for some reason unknown to me, remove the leading path components from >> the patch. > > The reason is probably that they have set diff.noprefix in their config, > and git-format-patch respects that. Which is arguably a bug. FWIW, I've always considered it a feature to help projects that prefer their patches in -p0 form. Of course, Git optimized itself for the usecase we consider the optimum, i.e. using a/ and b/ prefix on the diff generation side, while stripping them with -p1 on the applying side. I wonder apply.plevel or am.plevel would be a good way to help them further? I am not sure making format-patch _ignore_ diff.src/dst_prefix is a good approach. If we were wiser, we may not have introduced the diff.noprefix option, made sure diff.src/dstprefix to be always a single level, and kept -p<n> on the application side as an escape hatch only to deal with non-Git generated patches. The opportunity to simplify the world that way however we missed 15 years ago X-<.