refactor: extract git worktree parser from atlas hook

This commit is contained in:
YeonGyu-Kim
2026-02-08 13:30:00 +09:00
parent d72ed98ab3
commit 441cbf5901
9 changed files with 195 additions and 110 deletions
@@ -0,0 +1,25 @@
import type { GitFileStatus } from "./types"
export function parseGitStatusPorcelain(output: string): Map<string, GitFileStatus> {
const map = new Map<string, GitFileStatus>()
if (!output) return map
for (const line of output.split("\n")) {
if (!line) continue
const status = line.substring(0, 2).trim()
const filePath = line.substring(3)
if (!filePath) continue
if (status === "A" || status === "??") {
map.set(filePath, "added")
} else if (status === "D") {
map.set(filePath, "deleted")
} else {
map.set(filePath, "modified")
}
}
return map
}