はじめに
Flutterのダウングレードの方法を解説します。
あまり使うことはないと思いますが、下位互換性のないパッケージを使用している時などにダウングレードが必要なケースがあったりします。
私は実際に遭遇しました。
前提としてGitの知識があると良いです。
環境
PC: MacBook Pro Core i7
MacOS: 14.2.1
Flutterのバージョンを確認する
まず現在のFlutterのバージョンを確認します。
flutter --version
downgradeコマンドを打つ
Flutterのバージョンが指定できます。
flutter downgrade
私の場合はこの文言が表示されてダウングレードに失敗しました。
There is no previously recorded version for channel "stable".
以前のバージョンが見つかりません。のような文言
Gitを使用してダウングレードする
古いバージョンが必要なのでGitからFlutterの過去のバーションを取得します。
FlutterSDKのインストールディレクトリに移動
cd /Users/ユーザー名/Development/flutter
git fetchでFlutterのリモートリポジトリから最新版を取得します。
git fetch
リポジトリの一覧
* [new tag] 3.22.0-0.3.pre -> 3.22.0-0.3.pre
* [new tag] 3.22.0-10.0.pre -> 3.22.0-10.0.pre
* [new tag] 3.22.0-11.0.pre -> 3.22.0-11.0.pre
* [new tag] 3.22.0-12.0.pre -> 3.22.0-12.0.pre
* [new tag] 3.22.0-13.0.pre -> 3.22.0-13.0.pre
* [new tag] 3.22.0-14.0.pre -> 3.22.0-14.0.pre
* [new tag] 3.22.0-15.0.pre -> 3.22.0-15.0.pre
* [new tag] 3.22.0-17.0.pre -> 3.22.0-17.0.pre
* [new tag] 3.22.0-18.0.pre -> 3.22.0-18.0.pre
* [new tag] 3.22.0-19.0.pre -> 3.22.0-19.0.pre
* [new tag] 3.22.0-20.0.pre -> 3.22.0-20.0.pre
* [new tag] 3.22.0-21.0.pre -> 3.22.0-21.0.pre
* [new tag] 3.22.0-22.0.pre -> 3.22.0-22.0.pre
* [new tag] 3.22.0-0.2.pre -> 3.22.0-0.2.pre
リポジトリのタグ一覧(ここでいうバージョン一覧)
git tag
こんな感じで一覧表示されます。
0.0.6
0.0.7
0.0.8
0.0.9
1.17.0
1.17.0-3.2.pre
1.17.0-3.3.pre
1.17.0-3.4.pre
1.17.0-dev.0.0
1.17.0-dev.1.0
1.17.0-dev.2.0
バージョンを指定してチェックアウト(過去バーションのブランチに切り替える)
git checkout 2.10.3
変更したバージョンを確認
変更したバージョンを確認して先ほど指定したバージョンが適応されているか確認
flutter --version
Flutter 2.10.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision db7ef5bf9f (6 months ago) • 2023-11-15 11:25:44 -0800
Engine • revision 74d16627b9
Tools • Dart 3.2.0 • DevTools 2.28.2
エラーが出ていないかチェック
flutter doctor
まとめ
●flutter downgradeが使えない時は過去のバージョンをgitから引っ張ってくる必要がある
●バージョン変更後は不具合がないかflutter –version等でチェックを行う
いかがだったでしょうか?
ご意見、ご感想ありましたらお気軽にコメントしてください。
【参考文献】
【Flutter】バージョンを意図的に下げる - Qiita
現在のバージョンを確認する当時の最新版(3.3.8)で環境構築をしていたら、実はバージョンが低い環境が必要とのことで、Flutter SDKのバージョンを下げることになりました。ちなみに環境は、…
バージョン管理ツールというものもあるみたい。
開発者ごとでなく、プロジェクトごとにFlutterのバージョンを管理する - Qiita
Flutterのアップデート、まだまだ激しいですよね。以前チーム開発していた時も、他の開発者とのFlutterのバージョン違いによりAPI定義が異なりエラーの嵐→無駄なコミュニケーションの発生…
コメント