git cat-file --batch surprising carriage return behavior
- From
Joey Hess <id@joeyh.name>
- Date
- Oct 8, 2019, 19:22 UTC
- Message-ID
- <20191008192257.GA16870@kitenet.net>
I'm surprised to find that git cat-file --batch, on a Linux system, strips the \r from an input like "HEAD:foo\r\n"
It's obvious, of course, that it will remove the newline, and so this interface cannot be used to query about a filename that, for some horrible reason[1], contains a newline. But very surprising that it cannot be used for filename that contains a carriage return, at least on a non-Windows system.
The docs for cat-file --batch say the list of objects is separated by linefeeds. I don't know if updating the docs is the best fix. (I'd be happy to use a -z if it had one.)
-- see shy jo [1] aka "a large enough number of monkeys"