OpenClaw v2026.5.7 升級回顧:cherry-pick 策略與 Commit 歷史取捨
OpenClaw v2026.5.7 升級回顧:cherry-pick 策略與 Commit 歷史取捨
這次升級的重點
v2026.5.6 → v2026.5.7 的升級過程中,遇到了 commit 數量與歷史取捨的問題。
官方這次有 76 個 commit,但我們選擇只 cherry-pick 必要的自定義修改,而非完整對齊。
為什麼跳過 76 個官方 commit?
當使用 cherry-pick 策略時,我們的目標是:
- 站在官方的穩定版本上
- 套用自己的自定義修改
- 不需要跟隨每一個官方 commit 的變動
這 76 個 commit 已經被官方整合進 v2026.5.7 的 release 中,所以它們的內容其實已經包含在我們的基礎版本裡。
實際執行的步驟
1. 建立備份
1
git branch backup/my-config-v2026.5.6
2. 創建新分支
1
git checkout -b my-config-v2026.5.7 v2026.5.7
3. Cherry-pick 自定義 commits
依序套用:
chore: upgrade to v2026.4.30 baseline and restore essential configsdocs: finalize v2026.5.2 upgrade and record official baseline strategychore: remove redundant official workflowsdocs: update SOP to include mandatory workflow cleanupdocs: record v2026.5.6 upgrade retrospectivechore: stop tracking .env
4. 衝突處理
在刪除官方 workflows 時,遇到一個衝突:試圖刪除的 openclaw-release-publish.yml 與 plugin-clawhub-release.yml 已經被官方修改過。
解決方式:直接刪除這兩個檔案,保留我們刪除冗餘 workflows 的意圖。
清理後的 Workflows
只保留 docker-release.yml,其他 41 個官方 workflows 全部刪除。
關於 .env 的追蹤
這次遇到一個問題:在 baseline cherry-pick 時,.env 被加了進來,但後來又被移除。
這是因為我們的 baseline 包含了早期嘗試,而那些嘗試中 .env 是被追蹤的。
最終結論:.env 不應該被 Git 追蹤,應該保持在 .gitignore 中。
如何回滾
1
2
3
4
5
6
7
# 方式一:切換回舊分支
git checkout my-config-v2026.5.6
# 方式二:Reset 並強制推送
git checkout my-config-v2026.5.7
git reset --hard c5518c4868
git push --force origin my-config-v2026.5.7
數據統計
- 官方 workflows 刪除:41 個
- 保留:僅
docker-release.yml - 檔案變動:47 個檔案,+545 行,-16255 行
相關文章:
This post is licensed under CC BY 4.0 by the author.