Fixing `fatal: Not possible to fast-forward, aborting.` when upgrading Flutter
Because of this new package I needed, I had to upgrade my Flutter. So I ran flutter upgrade
as usual. This time instead of upgrading without a hitch, it told me:
% flutter upgrade
Upgrading Flutter from ~/flutter...
From https://github.com/flutter/flutter
...
fatal: Not possible to fast-forward, aborting.
So I went to the folder and ran git status
and sure enough something had happened:
flutter % git status
On branch beta
Your branch and 'origin/beta' have diverged,
and have 2 and 467 different commits each, respectively.
(use "git pull" to merge the remote branch into yours)
nothing to commit, working tree clean
Here's the view in SourceTree:
I am not sure why it diverged though. I ran flutter channel beta
according to the docs, but that failed too:
% flutter channel beta
Switching to flutter channel 'beta'...
git: Already on 'beta'
git: Your branch and 'origin/beta' have diverged,
git: and have 2 and 467 different commits each, respectively.
To manually reset the repo back to origin/beta
I ran:
% git reset --hard origin/beta
HEAD is now at 2738a1148b 1.18.0-11.1.pre beta cherrypicks (#57058)
This time, flutter upgrade
worked. Still not sure how it ever diverged in the first place though.