我的工作流程在推送时触发,但选择了错误的分支

问题描述 投票:0回答:1

我正在开发一个工作流程来构建和共享 ios 应用程序到 testflight。 我已经设置了触发点:

on:
  push:
    branches:
      - feature/prod_ios_workflow

但我注意到这个工作流程正在主分支代码上运行。

main 分支包含 pubspec.yaml 文件中的旧代码和依赖项。 而 feature/prod_ios_workflow 分支包含最新的代码和依赖项版本。

例如: feature/prod_ios_workflow 分支中的 pubspec.yaml 文件没有

flutter_localizations
套餐 但主分支中的 pubspec.yaml 文件具有此依赖性。

现在我删除了该依赖项,因为我不再使用它并且它与其他包冲突。

在我的工作流程中我正在做

flutter clean
flutter pub get

因此它在

flutter pub get
上失败,说明 flutter_localization 包需要最新版本的 intl 包。

我花了很多时间来检查那里出了什么问题。 最终我用了

- name: Remove flutter_localization
        run: flutter pub remove flutter_localizations

删除软件包以解决此冲突。

现在生成构建时出现了另一个问题。

在 feature/prod_ios_workflow 分支中我有: 截图:^3.0.0 但在主分支中:

screenshot:^2.1.0

当我升级flutter sdk时,我的截图包出现了一些错误,所以我也将截图包从2.1.0更新到3.0.0,它解决了我IDE中的问题。

所以我知道为什么构建失败了,因为最新的flutter sdk需要

screenshot:^3.0.0

但我不明白的是我在 feature/prod_ios_workflow 分支上,工作流应该在这个分支的代码上运行。但它从主分支获取代码。(这完全是疯了。)

任何帮助将不胜感激。

git github-actions flutter-dependencies workflow
1个回答
1
投票

花了这么多时间,我找到了问题的原因。

- name: Set up git and fetch all history for all branches and tags
        uses: actions/checkout@v4
        with:
          ref: main

我只需要将

main
替换为
feature/prod_ios_workflow
,如下所示:

- name: Set up git and fetch all history for all branches and tags
            uses: actions/checkout@v4
            with:
              ref: feature/prod_ios_workflow

或者你可以简单地删除 with 部分,如下所示:

- name: Set up git and fetch all history for all branches and tags
            uses: actions/checkout@v4
© www.soinside.com 2019 - 2024. All rights reserved.