feat: 舊版一鍵更新 update.sh + VERSION + CHANGELOG

舊版使用者升級的雞生蛋問題:本機沒有 update.sh,第一次靠 README
的 curl 從遠端抓更新器來跑,跑完它把自己裝進 scripts/update.sh,
之後直接跑本機的即可。

update.sh 只覆蓋模板/邏輯檔(hooks、commands、TEMPLATE-*),完全
不碰使用者資料(wiki 內容、.wikiignore、settings.json、CLAUDE.md)。
依已裝模組自動偵測該更新什麼,並比對 VERSION 列出新功能。

新增 template/.claude/VERSION 作為版本基準、CHANGELOG.md 記錄每版
變動,README 加更新區段與 CHANGELOG 連結。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-23 11:40:57 +08:00
parent 5c364aa592
commit 68f71eab75
4 changed files with 242 additions and 1 deletions
+29 -1
View File
@@ -65,6 +65,33 @@ CC 會掃描現有文件、建立 wiki、整理 docs 結構。
---
## 🔄 已安裝舊版?一鍵更新
聽到出新功能了,想升級到最新版,跑這一行就好:
```bash
cd your-project
curl -sSL https://raw.githubusercontent.com/uncle6me-web/system-dev-template/main/scripts/update.sh | bash
```
它會先比對你的版本和最新版,告訴你**多了哪些新功能**,然後:
| 動作 | 對象 |
|------|------|
| 🆕 **補上**新功能(舊版沒有的 hook / command / 範本) | 模板檔 |
| ⬆️ **更新**模板邏輯(hooks、commands、TEMPLATE-* 換成新版) | 模板檔 |
| 🔒 **完全不碰**你的內容與設定 | `wiki/status.md``mistakes.md``decisions-summary.md``.wikiignore``settings.json``CLAUDE.md` |
> **為什麼第一次要用 curl?** 舊版本機還沒有 `update.sh`,所以第一次得從遠端抓它下來跑。
> 跑完它會把自己也裝進 `scripts/update.sh`**之後更新直接跑** `bash scripts/update.sh` 就好,不用再 curl。
更新只會動「已安裝的模組」(裝了 wiki 就更新 wiki,裝了 SDD 就更新 SDD),偵測自動完成。
`settings.json` 缺了新版才有的 hook,它不會幫你改設定,但會在結尾**列出來提醒你手動補**(不擅自動你的設定)。
📜 想知道每次改了什麼、現在是哪一版?看 **[更新紀錄 CHANGELOG](CHANGELOG.md)**。
---
## 目錄說明
```
@@ -82,7 +109,8 @@ system-dev-template/
│ └── llm-wiki/ ← 複製到 Legacy-Workspace/.claude/skills/
├── scripts/
── install.sh ← 已有專案接入腳本
── install.sh ← 已有專案接入腳本
│ └── update.sh ← 舊版一鍵更新(只換模板,不碰你的資料)
└── docs/ ← 這個 repo 自己的說明
├── why.md ← 設計理念