in tools/infra_scripts/import-hirschgarten-pr.py [0:0]
def rewrite(patch: str, pre: str) -> str:
out = []
for ln in patch.splitlines(keepends=True):
if ln.startswith("diff --git"):
m = re.match(r"diff --git a/(.+?) b/(.+)", ln)
if m:
a, b = m.groups()
ln = f"diff --git a/{add_prefix(a, pre)} b/{add_prefix(b, pre)}\n"
elif ln.startswith("--- a/"):
ln = f"--- a/{add_prefix(ln[6:].strip(), pre)}\n"
elif ln.startswith("+++ b/"):
ln = f"+++ b/{add_prefix(ln[6:].strip(), pre)}\n"
elif ln.startswith("rename from "):
ln = f"rename from {add_prefix(ln[12:].strip(), pre)}\n"
elif ln.startswith("rename to "):
ln = f"rename to {add_prefix(ln[10:].strip(), pre)}\n"
out.append(ln)
return "".join(out)