You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's been like that for a long time, so I don't remember whether an old version of git config wrote it like that, or whether I put it there by hand. Anyway, git itself has always been fine with this. The relevant part of git-config(1) says:
A line that defines a value can be continued to the next line by ending it with a ; the backslash and the end-of-line are stripped. Leading whitespaces after name =, the remainder of the line after the first comment character # or ;, and trailing whitespaces of the line are discarded unless they are enclosed in double quotes. Internal whitespaces within the value are retained verbatim.
Inside double quotes, double quote " and backslash \ characters must be escaped: use " for " and \ for .
The following escape sequences (beside " and \) are recognized: \n for newline character (NL), \t for horizontal tabulation (HT, TAB) and \b for backspace (BS). Other char escape sequences (including octal escape sequences) are invalid.
But when I create a commit using IndexFile.commit(), I get this in the commit metadata, which I'm pretty sure is malformed:
The config parser here is based on the INI config parser, which makes it very much non-conforming to the Git specification.
Fixes on top of that can certainly be done though, hoping they won't introduce more problems than they solve.
My
~/.gitconfig
starts like this:It's been like that for a long time, so I don't remember whether an old version of
git config
wrote it like that, or whether I put it there by hand. Anyway,git
itself has always been fine with this. The relevant part of git-config(1) says:But when I create a commit using
IndexFile.commit()
, I get this in the commit metadata, which I'm pretty sure is malformed:Author: "Colin Watson" <"[email protected]">
I think
GitConfigParser
should match the parsing rules thatgit config
follows.The text was updated successfully, but these errors were encountered: