{"id":13823841,"url":"https://github.com/befovy/fvm","last_synced_at":"2025-05-07T15:20:40.702Z","repository":{"id":51322523,"uuid":"226255595","full_name":"befovy/fvm","owner":"befovy","description":"Flutter Version Manager. Flutter 多版本管理工具。  本地缓存安装多个 Flutter 版本，随时快速切换","archived":false,"fork":false,"pushed_at":"2021-05-15T12:41:31.000Z","size":91,"stargazers_count":260,"open_issues_count":11,"forks_count":19,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-05-19T12:12:49.761Z","etag":null,"topics":["flutter","flutter-sdk-versions","fvm","golang","version-manager"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/befovy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-06T05:51:12.000Z","updated_at":"2024-05-06T06:09:30.000Z","dependencies_parsed_at":"2022-09-11T22:01:34.602Z","dependency_job_id":null,"html_url":"https://github.com/befovy/fvm","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/befovy%2Ffvm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/befovy%2Ffvm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/befovy%2Ffvm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/befovy%2Ffvm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/befovy","download_url":"https://codeload.github.com/befovy/fvm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252902676,"owners_count":21822276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flutter","flutter-sdk-versions","fvm","golang","version-manager"],"created_at":"2024-08-04T09:00:46.460Z","updated_at":"2025-05-07T15:20:40.686Z","avatar_url":"https://github.com/befovy.png","language":"Go","readme":"# `fvm`\n\nFlutter Version Management: A simple cli to manage Flutter SDK versions.\n\n**Features:**\n\n* Configure Flutter SDK version per project or globally\n* Ability to install and cache multiple Flutter SDK Versions\n* Easily switch between Flutter channels \u0026 versions\n\n## Version Management\n\nThis tool allows you to manage multiple channels and releases, and caches these versions locally, so you don't have to wait for a full setup every time you want to switch versions.\n\nAlso, it allows you to grab versions by a specific release, i.e. 1.2.0. In case you have projects in different Flutter SDK versions and do not want to upgrade.\n\n## Usage\n\nTo Install fvm:\n\n```bash\nbrew tap befovy/taps\nbrew install fvm\n```\n\nOr install fvm through `go get`\n\n```bash\n\u003e go get -u -v github.com/befovy/fvm\n```\n\nThe command above will install binary executable fvm file to `$GOPATH/bin`.  \nAdd `$GOPATH/bin` to your system PATH, or move the binary fvm file to an existing PATH directory.\n\nAnd then, for information on each command:\n\n```bash\n\u003e fvm help\n```\n\n### FVM_HOME\n\nfvm use environment variable `FVM_HOME` as a working path.  \nThe installed cache and config file are all stored in this path.\n\nIf no `FVM_HOME` in environment variable, fvm will use the default value returned by `os.UserConfigDir()` append `fvm`.  \nOn Mac OS, default `FVM_HOME` is `$HOME/Library/Application Support/fvm`\n\n### Install a SDK Version\n\nFVM gives you the ability to install many Flutter **releases** or **channels**.\n\n```bash\n\u003e fvm install \u003cversion\u003e\n```\n\nUse `master` to install the Master channel and `v1.8.0` to install the release.\n\nUse `--repo` to install flutter from unoffical repo\n```bash\n\u003e fvm install master --repo https://github.com/flutter/flutter.git\n```\n\n### Import Flutter from previous installation\n\nFVM has subcommand `import` which can import your previous installed flutter into fvm.\n\n```bash\n\u003e fvm import \u003cname\u003e\n```  \n\nIf you have installed master channel flutter, just use `fvm import master`.  \nOr if you have installed a special derived flutter, just use any name you want to import this flutter. \nYou can use a name from you company, or any other you want. `fvm import xianyu`\n\n### Use a SDK Version\n\nYou can use the installed Flutter SDK versions for your computer user account globally. To do that just:\n\n```bash\n\u003e fvm use \u003cversion\u003e\n```\n\nAlso, you can use different Flutter SDK versions per project. To do that you have to go into the root of the project and:\n\n```bash\n\u003e fvm use \u003cversion\u003e --locol\n```\n\n### Show current SDK info\n\nGet current active Flutter sdk version, link path and actually path\n\n```bash\n\u003e fvm current\n```\n\n### Remove a SDK Version\n\nUsing the remove command will uninstall the SDK version locally. This will impact any projects that depend on that version of the SDK.\n\n```bash\n\u003e fvm remove \u003cversion\u003e\n```\n\n### List Installed Versions\n\nList all the versions that are installed on your machine.\n\n```bash\n\u003e fvm list\n```\n\n### Running Flutter SDK\n\n#### Call Global SDK \n\nAfter add fvm global path to your system environment variable, `flutter` command is usable every where.\n\nYour will get tip when you run `fvm use \u003cversion\u003e` firstly.\n\n\n\n#### Proxy Commands\n\nFlutter command within `fvm` proxies all calls to the CLI just changing the SDK to be the local one.\n\n```bash\n\u003e fvm flutter run\n```\n\nThis will run `flutter run` command using the local project SDK. If no FVM config is found in the project. FMV will recursively try for a version in a parent directory.\n\nIf FVM config is still not found, this will run `flutter run` command using the global Flutter SDK. \n\n\n\n#### Call Local SDK Directly\n\nFVM creates a symbolic link within your project called **.fvm/current** which links to the installed version of the SDK.\n\n\nAdd `$(pwd)/.fvm/current/bin` to your PATH, or\n```bash\n\u003e .fvm/current/bin/flutter run\n```\n\nThis will run `flutter run` command using the local project SDK.\n\nAs an example calling `fvm flutter run` is the equivalent of calling `flutter run` using the local project SDK.\n\n\n\n## License\n\nThis project is licensed under the Apache License 2.0 License - see the [LICENSE](LICENSE) file for details\n\n\n","funding_links":[],"categories":["Tools"],"sub_categories":["Effect"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbefovy%2Ffvm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbefovy%2Ffvm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbefovy%2Ffvm/lists"}