搜尋套件、儲存庫與 APP 分類

套件詳情v4.3.2

fvm

一個簡單的命令列工具,用於按專案管理 Flutter SDK 版本。支援頻道、發行版本以及本機快取,以實現快速切換版本。

Windows
近 30 天下載
19.7萬
喜歡數
726
Pub 分數
130

安裝套件

flutter pub add fvm

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

FVM(Flutter 版本管理器)是一個命令列工具,可簡化在不同專案之間管理多個 Flutter SDK 版本的過程。它讓開發者能輕鬆在穩定版、Beta 版、開發版和主幹版通道之間切換,以及使用特定版本。FVM 會將 Flutter SDK 本地快取,實現快速切換,並確保每個專案使用其指定的版本。非常適合需要在多個具有不同 SDK 要求的 Flutter 專案中協作的團隊。

適用情境

  • 在單一開發環境中管理多個Flutter版本
  • 在穩定版和 Beta 版 Flutter 通道之間切換
  • 確保團隊成員之間 SDK 版本的一致性
  • 快速測試應用與不同 Flutter 版本的相容性
  • 使用特定Flutter版本設定CI/CD流水線

主要特色

  • 按專案管理 Flutter SDK 版本
  • 支援所有 Flutter 渠道和發行版
  • 本地 SDK 快取以實現更快的切換
  • 簡單的命令列介面
  • 透過 .fvm/config 檔案自動版本解析

適合對象

  • 正在開發多個Flutter專案的開發者
  • 需要一致的 Flutter SDK 版本的團隊
  • CI/CD 環境
  • 跨版本測試和調試

使用建議

  • 每個專案都需要設定 .fvm/config 檔案
  • 僅限Windows平台,如所列
  • 可能需要在 IDE 中進行額外設定
  • 與繞過 SDK 路徑的 Flutter 工具不相容

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

fvm

GitHub stars Pub Version Pub Likes Pub Points All Contributors MIT License Codecov Awesome Flutter

FVM manages Flutter SDK versions per project. Switch between Flutter versions instantly without reinstalling, making it easy to test new releases and maintain consistent builds across your team.

Why FVM?

  • Need for simultaneous use of multiple Flutter SDKs.
  • SDK testing requires constant channel switching.
  • Channel switches are slow and need repeated reinstalls.
  • Difficulty managing the latest successful SDK version used in an app.
  • Flutter's major updates demand total app migration.
  • Inconsistencies occur in development environments within teams.

For more information, read the Getting Started guide.

Release Process (For Maintainers)

FVM uses GitHub releases to trigger automated deployments across all platforms:

Creating a New Release
  1. Ensure main branch is ready

    • All changes merged and tested
    • Version will be set automatically from release tag
  2. Create GitHub Release

    • Go to GitHub Releases
    • Click "Create a new release"
    • Choose tag: v4.0.0-beta.2 (follows semver with 'v' prefix)
    • Write release notes in GitHub editor
    • Click "Publish release"
  3. Automated Deployment

    • release.yml triggers automatically
    • Deploys to: pub.dev, GitHub binaries, Homebrew, Chocolatey, Docker
    • Monitor progress in Actions tab

Dart SDK requirements: Day-to-day development now targets the repository SDK constraint (>=3.6.0 <4.0.0). Release automation lives under tool/release_tool/ and requires Dart SDK >=3.8.0. CI pins this higher tool chain via the RELEASE_DART_SDK environment variable (currently 3.9.0) so it matches the versions packaged for Homebrew and other installers. If you run release tasks locally, switch to a Dart SDK 3.8.0 or newer before executing commands from tool/release_tool/.

Emergency Releases

For hotfixes or emergency releases:

  1. Update version manually in pubspec.yaml
  2. Use individual platform workflows via manual dispatch:
    • deploy_homebrew.yml for Homebrew updates
    • deploy_docker.yml for Docker deployment
    • Individual platform deployments as needed

For complete emergency deployment, create a GitHub release as normal.

See Workflow Documentation for detailed information.

Contributors


Checkout Flutter Sidekick. Read more about it here.

Troubleshooting

Please view our FAQ.

License

This project is licensed under the MIT License; see LICENSE file for details.

所屬分類

依賴

依賴清單 22 項

原始碼儲存庫

使用此套件的專案