Flutter 有没有办法将颤振版本与源代码控制“绑定”在一起?

Flutter 有没有办法将颤振版本与源代码控制“绑定”在一起?,flutter,Flutter,我知道我可以在pubspec.yaml中设置约束,以指定我的应用程序的这个特定版本必须使用哪个颤振版本,但我想知道我是否可以告诉应用程序只使用该版本的颤振,并将其检查到源代码管理中 我的问题的例子: 我们有一个开发分支,在那里我们为下一个主要版本开发新功能,该版本也使用例如Flatter 1.22,但在热修复分支上,我们仍然需要修复当前live版本中的旧bug,该版本仍在例如1.20上运行 ->如果在修补程序和开发分支之间切换,我希望自动使用正确的颤振版本。这可以实现吗?我要做的是创建一个约定的

我知道我可以在pubspec.yaml中设置约束,以指定我的应用程序的这个特定版本必须使用哪个颤振版本,但我想知道我是否可以告诉应用程序只使用该版本的颤振,并将其检查到源代码管理中

我的问题的例子: 我们有一个开发分支,在那里我们为下一个主要版本开发新功能,该版本也使用例如Flatter 1.22,但在热修复分支上,我们仍然需要修复当前live版本中的旧bug,该版本仍在例如1.20上运行


->如果在修补程序和开发分支之间切换,我希望自动使用正确的颤振版本。这可以实现吗?

我要做的是创建一个约定的ODSDK位置,例如,所有开发人员都必须在其中安装FlitterSDK

%DEV_LOCAL_DIRECTORY_OF_CHOOSING%/flutter/version_number/
然后,我将创建bat文件来执行项目中的颤振。对于使用颤振lats(如1.1)的项目,它将

%DEV_LOCAL_DIRECTORY_OF_CHOOSING%/flutter/1.1/flutter.bat *%
这只蝙蝠将被送到源代码管理处。现在,正确SDK版本的路径将存储在VCS中,并且可以按照您的要求跟踪项目。在应用程序中更新颤振时,也会更新bat文件


现在,每当您在版本之间切换时,从项目目录运行Flatter将使用正确版本的SDK,或者如果系统上没有该SDK,则会失败并强制开发人员安装该SDK。

如果您想了解Google如何根据已批准版本的Flatter跟踪已批准版本的Dart,进入Flatter发行版并尝试git log bin/internal/engine.version。这基本上是Dart回购协议中的sha1,与此版本的颤振一起使用。

flatter->sdk:pubspec中的必选版本??正如我在问题中所写,我仍然需要手动升级/降级我的颤振版本。是的,你需要,你必须这样做。这就像你需要在Maven的POM中包含Java的执行JDK版本,并期望Maven为你选择二进制文件一样……你可以做的是修改flatter cmd/bat文件,将版本eg包含在目录路径中——然后开发者必须遵循所需的约定,安装正确版本的flatter。这听起来不是不好,会考虑与团队合作!谢谢