はじめに
Flutterのダウングレードの方法を解説します。
あまり使うことはないと思いますが、下位互換性のないパッケージを使用している時などにダウングレードが必要なケースがあったりします。
私は実際に遭遇しました。
前提としてGitの知識があると良いです。
環境
PC: MacBook Pro Core i7
MacOS: 14.2.1
解説
Flutterのバージョンを確認する
まず現在のFlutterのバージョンを確認します。
flutter --version
downgradeコマンドを打つ
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
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でリポジトリのタグ一覧を表示します。
(ここでいうバージョン一覧)
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」を使用するので以下のコマンドを入力します。
git checkout 2.10.3
変更したバージョンを確認する
変更したバージョンを確認して先ほど指定したバージョンが反映されているか確認
flutter –versionで確認できます。
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 2.10.3」になっている事を確認できたのでOKです。
念の為、flutter doctorでエラーが出ていないかチェックします。
flutter doctor
これでFlutterのダウングレードが完了しました!
まとめ
- 「git fetch」でFlutterのリモートリポジトリを取得する事ができる
- 「git checkout」でFlutterの過去のバージョンを取得してチェックアウトができる
- バージョン変更後は不具合がないか「flutter –version」や「flutter doctor」でチェックを行う
いかがだったでしょうか?
ご意見、ご感想ありましたらお気軽にコメントしてください。
【参考文献】
バージョン管理ツールというものもあるみたい。
コメント