# 兼容性 {#compatibility}

Tuist CLI 會與 Tuist 伺服器通訊，以支援快取、建置與測試洞察、預覽以及註冊中心等\<gN\>功能\</gN\>。伺服器會持續獨立部署，不受你升級 CLI 的時間影響，因此伺服器變更不應破壞你正在執行的 CLI 版本。為確保這一點，伺服器會在指定期間內保持與近期 CLI 版本的相容性。

## 支援期間 {#support-window}

Tuist 伺服器支援**最近 3 個月**內發布的 CLI 版本。在此期間內，伺服器保持向後相容：任何在最近 3 個月內發布的 CLI 都能繼續對伺服器進行建置、快取及執行\<gN\>測試\</gN\>，你可以按自己的節奏升級 CLI，而不會因伺服器變更而中斷。

CLI 遵循[語義化版本](https://semver.org)。任何在最近 3 個月內發布的版本都受支援。

## 超出支援期間 {#outside-the-window}

超出支援期間的 CLI 版本視為已棄用。伺服器仍會回應，但：

- 較新的伺服器端\<gN\>功能\</gN\>可能無法在該版本上運作。
- 由伺服器支援的命令可能會列印警告，要求你升級。

已棄用版本的行為不保證。如果你仍在使用，請升級至支援期間內的版本。

## 我們如何履行承諾 {#how-we-keep-the-promise}

向後相容性會經過驗證，而非假設。每次伺服器部署都會針對**仍在支援期間內的最舊 CLI 版本**執行自動化驗收測試，目前為 `4.150.0`，並端到端測試快取拉取路徑。如果某項變更會破壞該版本，部署會在進入生產環境前被阻擋。此測試會與針對最新 CLI 的測試並行執行，因此舊版用戶端的回歸問題會與最新版一樣被偵測到。

## 建議 {#recommendation}

至少每 3 個月升級一次 CLI，以保持在支援期間內。在 CI 中鎖定 CLI 版本並定期更新，可讓你的團隊維持在一致且受支援的版本上。
