
jiantw83andClaude Opus 5
9e049580bb
feat(worktree-remove): 手動清掉一棵工作樹,絕不 --force
pr-watch 會在 PR 合併或關閉時自動清理,但永遠不會被合併也不會被關閉的 PR 沒有出口
——沒有這一支,那些工作樹只能靠使用者自己記得去刪。兩條路共用 lib 的 removeWorktree,
不互相開子行程:守門的規則只有一份,自動的那條與手動的這條不該長出兩種行為。
**絕不 --force。** 清理會被自動執行,而自動執行的東西只能做可逆的事:工作樹重建得回來,
被刪掉的未提交變更救不回來。所以有東西沒提交就中止並報出路徑與檔名。只移除工作樹,
本機分支與遠端分支都留著。
輸入是 owner/repo 與分支名而不是一條路徑:要刪哪一棵由「哪顆工作包」決定,
使用者不必自己去記 12 碼的雜湊目錄名。
順手修掉一個測試抓出來的解析錯誤:git status --porcelain 的第一行前導空白會被 runGit
的 trim 修掉,固定切前三個字元會讓已修改檔案的檔名少一個字(README.md 變成 EADME.md),
人照著訊息去找會找不到。改成認「狀態欄一到兩個字元 + 空白」。
議題 #41
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-17 16:59:30 +08:00
..
2026-09-17 08:23:21 +00:00
2026-09-17 06:59:37 +00:00
2026-09-17 16:27:43 +08:00
2026-09-17 16:29:12 +08:00
2026-09-17 07:39:54 +00:00
2026-09-17 08:23:24 +00:00
2026-09-17 06:59:37 +00:00
2026-09-17 04:44:47 +00:00
2026-09-17 05:00:29 +00:00
2026-09-17 06:06:05 +00:00
2026-09-17 07:39:54 +00:00
2026-09-17 07:39:54 +00:00
2026-09-17 04:44:45 +00:00
2026-09-17 16:29:12 +08:00
2026-09-17 06:22:31 +00:00
2026-09-17 08:46:33 +00:00
2026-09-17 08:23:25 +00:00
2026-09-17 08:46:34 +00:00
2026-09-17 04:44:45 +00:00
2026-09-17 07:39:54 +00:00
2026-09-17 06:59:37 +00:00
2026-09-17 15:30:27 +08:00
2026-09-17 06:50:35 +00:00
2026-09-17 06:06:11 +00:00
2026-09-17 08:23:27 +00:00
2026-09-17 05:43:24 +00:00
2026-09-17 16:29:12 +08:00
2026-09-17 08:46:35 +00:00
2026-09-17 05:43:26 +00:00
2026-09-17 06:50:35 +00:00
2026-09-17 06:59:37 +00:00
2026-09-17 04:26:51 +00:00
2026-09-17 16:29:12 +08:00
2026-09-17 06:22:29 +00:00
2026-09-17 16:27:43 +08:00
2026-09-17 16:59:30 +08:00
2026-09-17 06:30:24 +00:00
2026-09-17 06:06:08 +00:00