Flutter Multi-Version Management
Preface
If you are developing a project on your own, you really just need to pick one Flutter version and follow that version’s rules.
But if you join a company that has Flutter projects on different versions to maintain or develop, then you will need to switch back and forth between multiple versions.
(This is also a problem I ran into a few months ago, so I want to record it here.)
Just Rename the Folder
Actually, the simplest way is to go to the official site and download the Flutter versions you need (let’s assume you download 2.10.2 and 2.8.1), unzip them, rename each folder to something like flutter_version (this part is up to you, just pick something easy to remember), and place them under the path you prefer. (e.g. “/Users/User/Library/Flutter_sdk/“)

Then modify .zshrc or .bash_profile to add the command line path:
export PATH="$PATH:/Users/User/Library/Flutter_sdk/flutter/bin"
After that, just rename the folder of the Flutter version you want to use to flutter (for example, if you want to use 2.8.1, rename flutter_2_8 to flutter):

You can run flutter --version in the terminal to check whether it worked.

FVM Management
FVM is a third-party Flutter version management tool, similar to Node.js’s NVM. It lets you switch between Flutter versions very conveniently.
You can follow the steps on the FVM open-source community’s official site:
brew tap leoafarias/fvm
brew install fvm
After that, you can use FVM commands to download and invoke Flutter.
Download a specific Flutter version:
fvm install {version}Use a specific Flutter version:
fvm use {verison}Remove a specific Flutter version:
fvm remove {version}
But note that afterwards, when you use a Flutter command (for example flutter run), you have to use fvm flutter run instead of flutter run. If you find that annoying, you can also tweak your .zshrc or .bash_profile:
alias flutter='fvm flutter'
ChangeLog
- 20220221, init
- 20260501–translate by claude code