架構
lip 用於管理工作區中已安裝包的狀態。
工作區狀態
表示工作區當前狀態,追蹤安裝了哪些包以及安裝方式。
- Packages:已安裝包集合,記錄在狀態文件中;lip 將其保存在工作區中的
.lip/state.json。 - 環境:工作區的運行端(
server或client)和平臺(.NET RID)。參見環境。
配置
用於管理 lip 工具本身的全局配置(如代理和默認行為)。
- Properties:配置項鍵值對(例如
github_proxy)。
包來源
包是根部帶有 lip.toml 的歸檔。參見 lip.toml。
- git 倉庫:像
github.com/user/repo這樣的包 ID 即 git 倉庫https://github.com/user/repo.git,lip 使用內置的 git smart-HTTP(協議第 2 版)客戶端讀取;無需安裝git命令行工具。不存在中心化註冊表:版本即倉庫的v<semver>標籤,git 引用(@branch:、@tag:、@rev:)則改為選取一個提交。 - URL:通過 HTTPS 下載的 ZIP 歸檔。
- 本地文件和目錄:通過路徑傳給
lip install、根部帶有lip.toml的 ZIP 文件和目錄。 - 緩存:HTTP(S) 下載內容按其 URL 的 SHA-256 存儲(
http-<hash>)。git 歸檔不會被緩存。
詳見內部機制。