跳到內容

變更歷史 · Git

Blyck 會把人與 AI 修改的東西集中在一個視窗(ChangeSet)中顯示,並且可以還原。檔案變更以 git(記錄程式碼變更的程式)為準,DB·伺服器指令·套件安裝則留在 Blyck 的變更紀錄中。不需要另外鎖定或準備,會自動記錄。

功能免費 / Pro
ChangeSet 視窗、還原、git 狀態·提交·推送·分支、.gitignore 編輯、GitHub 連線免費
[✨ AI 訊息](自動撰寫提交訊息)Pro
自動檢查點(AI 回答結束時自動提交)只有使用 AI(Pro)時才會產生。查看·還原已建立的檢查點是免費的

ChangeSet — 📁 shop-api 視窗、變更前/後比較、還原

  1. 用 [所有變更] / [此任務] 切換範圍 · [GitHub] 連結·推送
  2. Git 列 — 分支·未提交數·提交·推送
  3. 變更的檔案(📁 shop-api (git · 2))— 每一行按 [還原] 就回到最後一次提交的狀態
  4. 點一行,右側會顯示變更前(紅色)/ 變更後(綠色)
方法一開始的範圍
Ctrl+Shift+H 或 Ctrl+Shift+K所有變更
命令面板 → 變更歷史 / Git所有變更
AI 聊天輸入欄下方的 📦 N此任務(那個聊天)

📦 旁邊的數字是那個聊天資料夾中尚未提交的檔案數 + DB/SSH/套件紀錄數。

部分功能
[變更] / [提交歷史] 分頁修改過的東西清單 / git 提交清單
[所有變更] / [此任務]切換範圍(要有 AI 聊天才能按 [此任務])
選擇資料夾AI 聊天有 2 個以上資料夾時,選全部或其中一個資料夾
[GitHub]GitHub 連線·推送·匯入
git 列分支·提交·推送(見下方)
左側清單 / 右側詳細點一列,右側就會顯示變更前·後
[包含已封存] · [全部標為已部署]也顯示以「已部署」關閉的項目 / 把目前清單全部以已部署(封存)關閉
[清理備份表]刪除還原時已不再需要的伺服器 DB 備份資料表
  • 只在 [此任務] 範圍中顯示。會列出那個 AI 聊天的專案資料夾中,git 認為「有變更」的所有檔案。所以Claude·Codex 用自身編輯功能修改的檔案、終端機或其他程式修改的檔案也全都會出現。
  • 每列的樣子:📄 檔案名稱 · 狀態符號(M 已修改、?? 新檔案等)和 [還原] 按鈕。
圖示意思
🛠DB 結構變更(CREATE·ALTER 等)
💾DB 資料變更(INSERT·UPDATE·DELETE)
🖥伺服器指令
📦(前面)套件安裝 /(列尾)已封存
👤 / ✨人 / AI
↩已還原
⚠無法還原

點一列會顯示執行的 SQL、還原 SQL、連線。

種類何時記錄
檔案編輯器儲存(👤)、AI 用 Blyck 工具寫入的檔案(✨)、資料夾取代、還原
DB 結構 · 資料人·AI 修改 DB 時(在 UPDATE·DELETE 之前建立還原用備份)
伺服器指令AI 執行會改變東西的指令時(rm、mv、安裝等)
套件AI 安裝 pip 套件時

不記錄的東西:只讀取的操作、超過 1MB 的檔案、Claude·Codex 用自身編輯功能修改的檔案(這些只在 git 中看得到)、人在終端機直接輸入的指令。

還原什麼在哪裡動作
尚未提交的檔案[變更] 分頁檔案列的 [還原]恢復成最後一次提交的狀態
git 中新出現的檔案(??)同一個按鈕永久刪除檔案(不會進資源回收筒)
DB 變更DB 紀錄列 → [還原資料庫變更]執行還原 SQL(DB 必須已連線)
一個提交[提交歷史] 分頁的 [還原]建立一個反轉該提交的新提交
一次 AI 回答回答上的 📝 N 項變更 晶片建立一個還原該回答所產生提交的新提交
伺服器指令 · 套件安裝—無法還原(只留紀錄)
  • 所有還原都會先跳出確認視窗。會刪除或覆蓋的動作是紅色按鈕。
  • AI 進行還原·捨棄變更·推送時,也會經過同樣的確認視窗。

ChangeSet 視窗上方的 Git 列 — 分支·未提交數和提交訊息欄

  1. ⎇ main(切換分支)· + 新分支 · "· 2 個未提交" · 🚫 排除 / 右側 ⟳ 擷取 · ⤓ 拉取 · ⤒ 推送
  2. 提交列 — [✨ AI 訊息] 會讀取變更內容並填入訊息草稿,再按 [提交](🔍 驗證會檢查危險的變更)

[變更] 分頁上方的 git 操作列。只有 AI 聊天已設定專案資料夾時才會出現。本機與遠端(SSH)資料夾都可以。

  • 不是 git 儲存庫的話,用 [⎇ 初始化 Git 儲存庫] 建立儲存庫並留下第一個提交。
部分功能
⎇ 分支 / +切換分支 / 建立新分支
↑N ↓M · {n} 個未提交要推送的提交 / 要拉取的提交 / 尚未提交的檔案數
[🚫 排除].gitignore 編輯視窗
⟳ / ⤓ / ⤒取得(fetch)/ 拉取合併(pull)/ 推送(push)
提交訊息… 欄撰寫提交說明
[✨ AI 訊息]AI 讀取變更內容並填入訊息草稿 (Pro)
[提交]提交
[🔍 驗證]檢查危險的變更
  1. 用 Ctrl+Shift+K 打開視窗,按 [此任務] 確認修改過的檔案。
  2. 寫訊息,或按 [✨ AI 訊息]。
  3. [提交] →「提交完成 1a2b3c4」。
  4. 按 ⤒ 推送。

[🚫 排除] → 在 Git 排除設定 視窗中寫下模式並儲存。會依資料夾·副檔名顯示有幾個變更檔案,也可以用 📋 建議檔案模式 或 常用模式: 晶片一次加入常見的模式。同時取消追蹤已追蹤的檔案(保留檔案) 一開始就是開啟的,所以已在追蹤中的檔案也會被排除在追蹤之外(檔案仍留在磁碟上)。不想這樣的話,請關閉後再儲存。要提交後才會生效。

查看目前工作的紀錄,找出危險的部分,以 ❌/⚠/✅ 顯示。

  • 沒有 WHERE 的 UPDATE/DELETE
  • DROP COLUMN / DROP TABLE
  • 加上 NOT NULL
  • 新增了函式,測試檔案卻沒有變更
  • 程式碼中使用的環境變數不在 .env 中
  • 顯示最近 50 個提交。點一個提交,會顯示完整訊息和變更內容。
  • 只存在於伺服器上的提交,會另外以 ⬇ 來自 GitHub 的 {n} 個傳入提交 顯示。
  • [還原] 會建立一個反轉該提交的新提交。發生衝突時,請在終端機中自己處理。

這是每次 AI 回答結束時自動提交修改過的檔案的安全帶(訊息以 checkpoint: 開頭)。出錯時可以輕鬆以回答為單位還原。

開啟位置:AI 聊天面板上方的 ⋯ → 聊天設定 → 顯示 → 🖥 顯示 / 串流 → 每個任務自動 git 檢查點。預設為關閉。

  1. 開啟上面的設定。專案資料夾必須是 git 儲存庫。
  2. 交代 AI 做事。
  3. 回答結束後會跳出「✓ 檢查點 1a2b3c4」通知,回答上會加上 📝 N 項變更 晶片。
  4. 點晶片可以查看那次回答修改的內容。
  5. 要還原就按 [還原此回答]。改變主意的話按 [重新套用]。
  • **只支援本機資料夾。**遠端資料夾不會建立檢查點。
  • 檢查點也會提交那個資料夾的所有變更(包含人修改的部分)。
  • 工作資料夾中有其他尚未提交的變更時,還原回答可能會失敗。

開啟位置:ChangeSet 視窗上方的 [GitHub] 按鈕。

  1. 按 [🔗 連線 GitHub],會顯示一組代碼,並在瀏覽器打開 GitHub 認證頁面。
  2. 在瀏覽器中輸入代碼並核准。
  3. Blyck 中會顯示 已連線 GitHub ✓ 和 ✓ @帳號。
想做的事方法
推送成新儲存庫🚀 推送到 GitHub → 新增儲存庫 → 名稱(已預先填入資料夾名稱)·私有(預設)→ [推送]
連結到現有儲存庫現有儲存庫 → 從清單中選擇後按 [連結](也會推送目前的分支)
從 GitHub 匯入📥 從 GitHub 匯入 → 選擇儲存庫 → [匯入] → 選擇上層資料夾。目前面板是 AI 聊天的話,匯入的資料夾會成為那個聊天的工作資料夾
中斷連線[中斷連線]
  • 連線金鑰(權杖)會以 OS 加密儲存。
  • 已連線 GitHub 的話,推送到 github.com 儲存庫時會自動登入。
無法還原的東西替代做法
伺服器指令(SSH·WinRM)、套件安裝自己清理
超過 1MB 的檔案只能用 git
Claude·Codex 用自身編輯功能修改的檔案[此任務] 的 git 檔案列(提交前),或還原檢查點·提交
git 中新出現檔案的「還原」會永久刪除 — 按之前務必確認
DROP·TRUNCATE、INSERT沒有還原 SQL·備份
SQLite 中一次修改超過 1,000 列的資料、沒有主鍵就 UPDATE 的資料沒有備份
伺服器 DB 中聯結·子查詢等複雜的 UPDATE·DELETE、手動提交模式下的變更沒有備份
DB 還原本身不能「還原的還原」

每個相同對象保存最近 40 筆、14 天,整體最多 2GB。以「已部署」關閉的項目會一直保留。紀錄檔案是 Blyck 使用者資料夾中的 blyck-history.db。

Q. 用 Ctrl+Shift+H 打開後,一個檔案都看不到。 [所有變更] 範圍不顯示檔案。請按 [此任務](需要 AI 聊天)。

Q. [此任務] 按鈕按不下去。 沒有開著的 AI 聊天。請打開 AI 聊天,或用聊天的 📦 晶片打開。

Q. 看不到 git 列。 AI 聊天沒有專案資料夾。請在 AI 聊天中設定工作資料夾。

Q. 推送立刻失敗。 沒有登入資訊。請在 [GitHub] 中連線,或在終端機中設定 git 認證資訊。

Q. 提交中包含了不想要的檔案。 [提交] 會提交所有變更。請先用 [🚫 排除] 排除。

Q. 沒有產生檢查點。 設定是關閉的,或是遠端資料夾、不是 git 儲存庫,或者沒有任何變更。

Q. DB 還原時出現「請先連線資料庫」。 DB 連線已關閉。請在 DB 樹中重新連線。