git full diff output issues..
From: Linus Torvalds <torvalds@osdl.org>
Date: 2016-06-15 22:41:58
While testing my "git-apply" thing (coming along quite nicely, thanks for asking), I've hit a case that is nasty to parse. This is from the 2.6.12-rc4 -> 2.6.12-rc5 patch: diff --git a/arch/um/kernel/checksum.c b/arch/um/kernel/checksum.c deleted file mode 100644 diff --git a/arch/um/kernel/initrd.c b/arch/um/kernel/initrd.c new file mode 100644 --- /dev/null +++ b/arch/um/kernel/initrd.c @@ -0,0 +1,78 @@ and the magic here is that deleted file that was empty to begin with, so it didn't have a patch, just a note on deletion. Why is that nasty? Because we don't have the file _name_ in any good format. The filename only exists int he "diff --git" header, and that one has the space-parsing issue, which makes it less than optimal. I'd suggest we enhance the "full diff" output for new and deleted files to match the rename output, ie we'd give the actual filename on that line too, to avoid any ambiguities. So we'd change it from deleted file mode 100644 to deleted file mode 100644 arch/um/kernel/checksum.c in this case.. Comments? Linus