06 / 07
環境變數與跨平台
終端機的差異由工具吸收,不要求你先改環境。
環境變數
| 變數 | 說明 |
|---|---|
MGIT_GIT | 指定 git 執行檔名稱或路徑(預設 git) |
MGIT_COLOR | auto、always 或 never,優先於終端機偵測 |
MGIT_ASCII | 1 強制 ASCII 符號;0 強制 Unicode 符號 |
NO_COLOR | 設為非空值時關閉顏色 |
CLICOLOR_FORCE | 設為非空且非 0 的值時強制開啟顏色 |
CLICOLOR | 設為 0 時關閉顏色 |
MGIT_VERSION | 安裝腳本要安裝的版本,例如 2.0.0 |
MGIT_INSTALL_DIR | 安裝腳本的安裝目錄 |
優先順序:命令列選項 → MGIT_* → CLICOLOR_FORCE → NO_COLOR → 終端機偵測。
試優先順序: CLICOLOR_FORCE=1 NO_COLOR=1 mgit --summary
跨平台行為
| 情境 | 行為 |
|---|---|
| 輸出被重導向(管線、檔案、CI 日誌) | 自動關閉顏色,只輸出純文字 |
Windows cmd.exe/Windows PowerShell 5.1 | 啟動時嘗試開啟虛擬終端(VT)模式讓 ANSI 顏色生效;開不起來就自動停用顏色 |
| Windows 主控台代碼頁不是 UTF-8 | 自動改用 ASCII 符號,避免 emoji 變亂碼 |
| PowerShell 7、Windows Terminal、macOS、Linux | 使用 Unicode 符號 |
POSIX locale 非 UTF-8(LANG=C) | 自動改用 ASCII 符號,可用 MGIT_ASCII=0 強制回復 |
mgit … | head | 還原 SIGPIPE 預設行為,管線中斷時安靜結束 |
Windows 上的 git | 透過 PATH(含 PATHEXT)尋找 git.exe,也可用 MGIT_GIT 指定完整路徑 |
試用場右上角的「輸出送到哪裡」可以直接切換這幾種情境,看同一個指令的輸出怎麼變。
找不到 git
mgit 在執行前會先確認 git 能不能啟動。啟動不了時會印出一行錯誤與該平台的安裝提示,並以 127 結束。