跳轉到主要內容

Documentation Index

Fetch the complete documentation index at: https://docs.bricks.tools/llms.txt

Use this file to discover all available pages before exploring further.

BRICKS 伺服器將最新版本的應用程式檔案拉取至您的本機專案。

從伺服器拉取檔案

  1. 點選聊天面板標題列中的操作 > 拉取
  2. 檢視確認對話框中的警告
  3. 點選拉取強制拉取
對話框提供兩種模式。拉取是預設的安全路徑;強制拉取則是舊版的原地覆寫流程。

拉取(預設)

拉取會藉由暫時的 BRICKS_PROJECT_try-pull-application 分支(模組則為 …try-pull-module),將伺服器的變更整合到您的 main 分支:
  1. 若有未暫存的變更會拒絕執行,請先 commit 或 stash。
  2. 當您的 HEAD 已和伺服器 commit 相同時,會以「Already up to date」中止。
  3. 以您上一次同步的 commit 為起點建立 try-pull 分支(見下方的同步標記),套用新檔案後 commit。
  4. 切換到 main 並以三方合併(3-way merge)的方式把 try-pull 分支併回去。
  5. 合併後刪除 try-pull 分支,您不需要自行管理側分支。
  6. 紀錄新的 HEAD 作為下次同步的起點。

解決合併衝突

當合併產生衝突時,CTOR 會把衝突標記直接 commit 在 main 上(使用 --no-verify 以避免 pre-commit hook 拒絕此中間狀態),對話框則會顯示拉取警告。接著自動編譯橫幅會把衝突標記回報為 typecheck 錯誤——直接在 main 上逐一修正,橫幅會隨著您修好的檔案逐步清除。

同步標記

.bricks/.last-pushed-commit 是每個 clone 各自獨立的檔案,紀錄您最近一次與伺服器同步的 commit。每次成功的 deploy、Update Config 或非強制拉取後,CTOR 都會更新此檔案,並在下一次拉取時優先使用它作為合併基準。當標記不存在時(例如剛 clone 完),CTOR 會回退至伺服器的最近 commit id;若兩者都無法在本機歷史中找到,則會直接從 HEAD 建立 try-pull 分支,三方合併會收斂到相同的結果。

強制拉取

強制拉取會留在目前的分支、自動 commit 未暫存的變更(commit 訊息為 chore(force-pull): saved unstaged changes before pull),並以伺服器版本覆寫本機檔案。它不會更動同步標記——該標記由 deploy、Update Config 與非強制拉取流程負責維護。
強制拉取會覆寫任何與伺服器版本衝突的本機變更。僅在不需要保留本機修改時才使用。