Re: More git status --porcelain lossage
Jakub Narebski <jnareb@gmail.com>:
Show 14 quoted lines
> > Conclusion: As it is presently, git status --porcelain format is
> > irretrievably botched. You need a field separator that's musch less
> > likely to land in a filename, like '|' - and to warn in the documentation
> > that careful front ends must check for and ignore '\|'.
>
> Or follow what other porcelain does, like git-diff-tree raw output
> format, where all fields except final filename are space separated,
> filename is separated by tab character (or NUL when '-z' options is
> used). If there are two names (in the case of copy or renames),
> they are separated by a tab (or NUL). Record ends with LF (or NUL).
>
> When '-z' option is not used, TAB, LF, " and backslash characters
> are represented by '\t', '\n', '\"' and \\, and the filename is
> enclosed in '"' doublequotes.
That would be a bit trickier to parse, but acceptable.
--
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>