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