flutter版本管理工具fvm及GUI工具Sidekick

TripleEyeAline發表於2021-07-04

前言

當flutter出了個新版本,想嚐嚐鮮?升級,開啟傻眼,各種報錯,新版可能會有很多東西要適配支援。退回去?flutter downgrade然後還得刪除快取,然後再flutter doctor一頓猛操作,網速要是差點意思了,那就夠喝杯茶了。 諸如此類,反正就是如果想本地多個flutter版本,可以愉快的快速便捷切換。幸運的是fvm這個非官方工具就能搞定以上需求。

fvm介紹

fvm:flutter version manager的縮寫。此工具可讓我們
  1. 在本地下載安裝多個版本flutter sdk。
  2. 為專案指定flutter版本,並可快速切換版本。
Sidekick:一個主要為Flutter fvm提供GUI的應用程式。
  1. 使用fvm比較簡便快捷
  2. 裡面有當前的flutter stable/beta/dev以及歷史版本,方便下載使用
  3. 有一些flutter的第三方treding/morst used packages/flutter favorites。

fvm的安裝和使用

fvm安裝

官網安裝介紹
原作者github

下面以macOS為例。

brew tap leoafarias/fvm
brew install fvm
複製程式碼

預設的flutter SDK快取路徑為~/fvm/versions

安裝成功之後,就是配置你的環境變數到指令碼工具中: 由於Mac的指令碼工具有 .bash 和 .zsh 兩個,一般預設的是 bash,具體切換,可以在這裡參看蘋果官網的切換方法:在Mac上將.zsh用作預設Shell

fvm安裝flutter sdk

fvm install 1.22.6      //安裝flutter 1.22.6的stable版本
fvm install stable      //安裝當前最新的stable版本
fvm install dev         //安裝當前最新的pre預覽版本
複製程式碼

fvm安裝的flutter版本刪除

fvm remove 1.22.6       //解除安裝1.22.6版本
複製程式碼

fvm列出已安裝版本

~(master*) » fvm list                          
Cache Directory:  /Users/nickName/fvm/versions
2.2.2
1.22.6
複製程式碼

fvm檢視當前使用的flutter版本資訊

fvm flutter --version
複製程式碼

總之就是之前的flutter命令前面都加上fvm 例如

  • fvm flutter clean
  • fvm flutter pub get

搞定完以上後,以AS為例。開啟AS的preferences。 設定flutter sdk path, 對應的dart sdk path會自動填充

image.png

fvm flavor for project

flavor:flutter和fvm一樣每個專案環境或釋出型別配置多個Flutter SDK版本。

// ~/your_flutter_project.fvm/fvm_config.json
{
  "flutterSdkVersion": "1.22.6",
  "flavors": {
    "stable": "stable",
    "dev": "dev"
    "production": "1.22.6",
    "beta": "beta",
  }
}

// 它有以下幾種配置:

/* 給version起個名,會被記錄到~/your_flutter_project.fvm/fvm_config.json */
fvm use {version} --flavor {flavor_name} 

//list出當前專案配置的 flavors
fvm flavor {flavor_name}

fvm flavor
複製程式碼

Sidekick

非常實用、方便。具體的使用不展開說了,下載看看很清晰。 image.png

其他

在用leoafarias/fvm時候也看到過另外一個基於go的flutter版本管理工具befovy/fvm,基本與leoafarias/fvm沒多大差別,看各自喜好了。最後吃水不忘挖井人,給Leo Farias的leoafarias/fvm送上star。

相關文章