跳到正文
本頁目錄

架構

lip 用於管理工作區中已安裝包的狀態。

工作區狀態

表示工作區當前狀態,追蹤安裝了哪些包以及安裝方式。

  • Packages:已安裝包集合,記錄在鎖文件中;lip 將鎖文件保存在用戶數據目錄中。
  • 環境:工作區的平臺(server 或 client)和 .NET RID。參見環境。

配置

用於管理 lip 工具本身的全局配置(如代理和默認行為)。

  • Properties:配置項鍵值對(例如 github_proxy)。

包來源

包是位於某個歸檔根部的 manifest.json(或舊格式的 tooth.json)。參見包清單。

  • git 倉庫:像 github.com/user/repo 這樣的包路徑即 git 倉庫 https://github.com/user/repo.git,lip 使用內置的 git smart-HTTP(協議第 2 版)客戶端讀取;無需安裝 git 命令行工具。不存在中心化註冊表:版本即倉庫的 v<semver> 標籤,git 引用(@branch:、@tag:、@rev:)則改為選取一個提交。
  • ZIP 歸檔:.mcmod 文件和其他 ZIP 文件,通過 HTTPS 下載,或位於另一個歸檔之內。
  • 本地文件:通過路徑傳給 lip install 的 .mcmod 及其他 ZIP 文件。本地目錄不是包來源;歸檔內的目錄通過相對引用訪問。
  • 緩存:git 對象按對象 ID 存儲(git-<id>),在不同版本和不同包之間共享;HTTP(S) 下載內容按其 URL 的 SHA-256 存儲(http-<hash>)。

詳見內部機制。