一尘不染

尝试运行Flutter升级时出错

flutter

我正在尝试既升级Flutter SDK,又将Flutter频道更改为master,但是遇到以下错误:

git: error: Your local changes to the following files would be overwritten by checkout:
git:    examples/catalog/android/build.gradle
git:    examples/catalog/android/gradle/wrapper/gradle-wrapper.properties
git:    packages/flutter_tools/gradle/flutter.gradle
git: Please commit your changes or stash them before you switch branches.
git: Aborting
Switching channels failed with error code 1.

为什么会发生这种情况,以及如何解决呢?


阅读 675

收藏
2020-08-13

共1个答案

一尘不染

发生这种情况是因为文件已在本地更改。这意味着您的计算机上的版本与GitHub上的版本不同。

解决此问题的最简单方法是使用--force

flutter upgrade --force

这将 覆盖
任何不匹配的文件。确保您没有由此而失去的进步(例如,当您为进行PR时flutter)。


解决此问题的另一种方法是从设备中删除文件,然后执行flutter upgrade。这将解决Git错误,因为它只会再次从Internet提取文件。

为此,请转到Flutter目录并删除文件。例如,如果您的Flutter SDK目录为F:/data/flutter,则需要删除以下文件:

  • F:/data/flutter/examples/catalog/android/build.gradle
  • F:/data/flutter/examples/catalog/android/gradle/wrapper/gradle-wrapper.properties
  • F:/data/flutter/packages/flutter_tools/gradle/flutter.gradle
2020-08-13