docs(sdlc-feat): 第三段補上兩個 repo 的區別與重跑的行為

說明 --repo 與 --issue-repo 的差別、--base 要明講不讓腳本猜、重跑不會開出第二顆 PR,
以及提交中途失敗時不要自己回捲歷史。
This commit is contained in:
2026-09-17 08:23:28 +00:00
parent 013947630f
commit 997d4ec280
+19 -7
View File
@@ -197,7 +197,11 @@ node scripts/commit-split.js --path <目標專案路徑> --type feat \
``` ```
`--type` 是**這次程式碼變更**的類型(`feat`/`fix`/`refactor`…);測試、文件與設定檔 `--type` 是**這次程式碼變更**的類型(`feat`/`fix`/`refactor`…);測試、文件與設定檔
由腳本自己認出來,各自成批,不必也不能指定。 由腳本自己認出來,各自成批,不必也不能指定。`--body` 寫「為什麼這樣做」,那一段會接在
每一顆 commit 的首行之後——本 repo 的歷史靠它讀得懂。
某一批提交失敗時,錯誤會列出**前面已經建立的那幾顆 commit**。修掉原因之後重跑即可,
已建立的不會重複;不要自己去回捲歷史。
`--scope` 只在某一批有多個檔案時才需要:單檔那批的 scope 就是檔名。試跑會印出將建立的 `--scope` 只在某一批有多個檔案時才需要:單檔那批的 scope 就是檔名。試跑會印出將建立的
每一顆 commit 與它各自的檔案,確認無誤後拿掉旗標再跑一次。 每一顆 commit 與它各自的檔案,確認無誤後拿掉旗標再跑一次。
@@ -236,21 +240,29 @@ node scripts/commit-split.js ... --files scripts/claim.js,test/claim.test.js
### 14. 開 PR 並停錶 ### 14. 開 PR 並停錶
``` ```
node scripts/pr-create.js --repo <owner/name> --head <分支名> \ node scripts/pr-create.js --repo <目標專案 owner/name> --head <分支名> \
--body-file <描述檔> --index <工作包編號> --dry-run --base <來源分支> --body-file <描述檔> \
--issue-repo <工作包議題的 owner/name> --index <工作包編號> --dry-run
``` ```
標題由腳本設為分支名,不必也不能另外指定。`--index` 是工作包議題編號,PR 開出去之後 `--repo` 是**程式碼所在的 repo**(PR 開在那裡),`--issue-repo` 是**工作包議題所在的
它會停掉那顆議題上的碼錶。 repo**(錶停在那裡)。兩者常常不是同一個——議題在需求的 repo,程式碼在 `repos` 列的
那幾個。同一個 repo 時 `--issue-repo` 可以省略。
`--base` 就是第一段問到的那支來源分支,要明講——腳本不替你猜 `master` 還是 `main`。
標題由腳本設為分支名,不必也不能另外指定。
順序是**先開 PR 再停錶**,而且 PR 沒開成就不停錶——工時要記在真的有做事的那段時間上。 順序是**先開 PR 再停錶**,而且 PR 沒開成就不停錶——工時要記在真的有做事的那段時間上。
錶本來就沒在跑不算失敗(`碼錶已停` 會是 `false` 並附一句說明),PR 仍然開出去了。 錶本來就沒在跑不算失敗(`碼錶已停` 會是 `false` 並附一句說明),PR 仍然開出去了。
重跑不會開出第二顆 PR:同一個 head 已經有開著的 PR 就回傳它(`created` 為 `false`),
然後照樣停錶——那一步可能正是上次中斷的地方。
### 15. 回報 ### 15. 回報
- PR 的網址與編號、標題(等同分支名) - PR 的網址與編號、標題(等同分支名),以及它是這次新開的還是接上既有的
- 建立了哪幾顆 commit - 建立了哪幾顆 commit
- 碼錶是否已停 - 碼錶是否已停;沒停的話把腳本回的那句說明一起帶出來
- 議題上還有沒有沒勾完的待辦(理論上應該沒有;有的話要說出來) - 議題上還有沒有沒勾完的待辦(理論上應該沒有;有的話要說出來)
## 邊界 ## 邊界