in src/dal/git/GitCommandArgumentsParser.ts [19:30]
private static parseModifiedStatus(statusRow: string): GitParsedStatusRow {
const porcelainStatusGitRegExp: RegExp = /^([MAD\s])([MAD\s])\s(.*)$/;
const parsedPorcelain: string[] = porcelainStatusGitRegExp.exec(statusRow);
if (!parsedPorcelain || parsedPorcelain.length !== 4) {
throw new Error(`Incorrect number of parsed arguments in the status row "${statusRow}"`);
}
return {
indexStatus: parsedPorcelain[1].trim() !== "" ? parsedPorcelain[1].trim() : undefined,
workingTreeStatus: parsedPorcelain[2].trim() !== "" ? parsedPorcelain[2].trim() : undefined,
relativePath: parsedPorcelain[3].trim()
};
}