aboutsummaryrefslogtreecommitdiffziptar.gz
path: root/wf.py
diff options
context:
space:
mode:
authorgodosa <godosa@godosa.eu>2026-10-07 07:57:29 +0200
committergodosa <godosa@godosa.eu>2026-10-07 07:57:29 +0200
commit5efcac492566e965820be757556bfdc1f17a2475 (patch)
treeb1b62fd714b988e0b5224bc85a9528ee1ad3745b /wf.py
parent930d8e023b5a4ac2e179aa80a74951cd5452668e (diff)
downloadworkflow-5efcac492566e965820be757556bfdc1f17a2475.tar.gz
workflow-5efcac492566e965820be757556bfdc1f17a2475.zip
wf finish: status -uall so new untracked file paths are accepted
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JEAjUkQRrCYX5MZhWxdtj2
Diffstat (limited to 'wf.py')
-rwxr-xr-xwf.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/wf.py b/wf.py
index 15b5e2d..3a6babf 100755
--- a/wf.py
+++ b/wf.py
@@ -1220,7 +1220,7 @@ def cmd_merge(args) -> int:
master = config.git_branch(main / ".git") or "master"
cfg = config.load_at(start)
files = [str(f.relative_to(main)) for f in (cfg.tasks, cfg.archive)]
- if git_run(top, "status", "--porcelain").stdout.strip():
+ if git_run(top, "status", "--porcelain", "-uall").stdout.strip():
raise Failure("worktree has uncommitted changes: commit them first")
if not branch and not unmerged_count(top, master):
# after a merge: notes / follow-ups written since → bookkeeping commit only
@@ -1271,7 +1271,7 @@ def _push_home(main: Path) -> bool:
def _dirty_outside(top: Path, keep: list[Path]) -> list[str]:
"""Uncommitted paths of the repo at `top` not under any of `keep` (absolute paths)."""
stray = []
- for line in git_run(top, "status", "--porcelain").stdout.splitlines():
+ for line in git_run(top, "status", "--porcelain", "-uall").stdout.splitlines():
rel = line[3:].split(" -> ")[-1].strip('"').rstrip("/")
path = (top / rel).resolve()
if not any(path == k or k in path.parents for k in keep):