in eng/tools/typespec-validation/src/utils.ts [38:58]
export async function gitDiffTopSpecFolder(host: TsvHost, folder: string) {
const git = host.gitOperation(folder);
let topSpecFolder = folder.replace(/(^.*specification\/[^\/]*)(.*)/, "$1");
let stdOutput = `Running git diff on folder ${topSpecFolder}`;
let gitStatus = await git.status(["--porcelain", topSpecFolder]);
let success = true;
let errorOutput: string | undefined;
if (!gitStatus.isClean()) {
success = false;
errorOutput = JSON.stringify(await git.status());
errorOutput += await git.diff();
}
return {
success: success,
stdOutput: stdOutput,
errorOutput: errorOutput,
};
}