2025-11-12 · Git

用互動式 rebase 整理提交歷史

重新排序、壓合與拆分 commit,讓 Pull Request 讀起來像一段故事。

前言

一套安全的操作流程,涵蓋 autosquash、用 force-with-lease 修正已經推送的提交,以及三種根本不該改寫歷史的情況。

常見的翻車方式

跳過這個步驟的團隊,通常會踩到三種坑:

  • 優化了一個沒有人同意要動的數字。
  • 照抄了約束條件完全不同的專案的作法。
  • 一直延後決策,直到反悔的成本高得嚇人。

建議的切入方式

  1. 用使用者的語言,一句話講清楚問題。
  2. 選一個每週都能量測的訊號,而不只是上線當天看一次。
  3. 給小實驗設時間盒;兩天的 spike 勝過兩週的辯論。

小結

如果 Git 教會我們什麼,那就是「無聊的一致性」打贏「聰明的一次性方案」。把學到的東西帶回團隊,別讓它變成口耳相傳的都市傳說。