每個刻意的捷徑都會以 shortcut: 註解標記,說明其上限與升級路徑(舊程式碼可能使用 ponytail:)。這能將所有延期事項收集到一個清單中,避免它們悄悄變成永久性問題。
掃描
對儲存庫進行 grep 搜尋註解標記,並跳過 .git 及 .gitignore 檔案忽略的所有內容(依賴項、建置輸出、快取等,適用於任何技術棧):
git grep --no-index --exclude-standard -nE '(#|//|/[*]) ?(shortcut|ponytail):' (如果你的技術棧使用其他註解前綴,請自行加入)
如果使用者指定了自己的標記詞(例如 /ponytail-debt TODO),則改為搜尋該詞。
每個匹配結果對應一行清單。註解前綴可避免僅提到慣例的文字被納入清單。請跳過那些並非延期事項的匹配,例如關於鍵盤快捷鍵的註解。
輸出
每個標記一行,按檔案分組:
<檔案>:<行號>, <簡化的內容。上限: <指定的限制。升級: <重新檢視的觸發條件。>
慣例是 shortcut: <上限>, <升級路徑>,因此直接從註解中提取上限與觸發條件。如果想為每行加入負責人,請加上 git blame -L<行號>,<行號>。
標示腐敗風險:任何未指定升級路徑或觸發條件的標記註解會獲得 no-trigger 標籤,這些就是會悄悄腐敗的項目。
最後輸出 <N> 個標記,其中 <M> 個無觸發條件。 如果什麼都沒找到:無捷徑債務。清單乾淨。
邊界
僅讀取並報告,不會變更任何內容。如需持久化,可要求它將清單寫入檔案(例如 PONYTAIL-DEBT.md)。一次性執行。