运行 GitHub 操作以使用 Main 重新设置测试分支的基础

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

我有一个在

test
分支上运行的测试环境,并且我设置了一个 GitHub Action,以便在
test
分支合并到
main
分支时保持最新状态。默认情况下,我们使用“挤压”合并策略来保持
main
分支历史记录干净。下面的脚本有效,但我希望得到更有经验的同行的反馈:

name: Update Test Branch

on:
  push:
    branches: [main]
    
permissions: write-all

jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Setup Git User
        run: |
          git config --global user.name 'github-actions[bot]'
          git config --global user.email 'github-actions[bot]@users.noreply.github.com'

      - name: Update Test Branch
        run: |
          git checkout main
          git fetch origin
          git checkout test
          git pull origin test
          git rebase origin/main || { git rebase --abort; echo "::error ::Rebase conflict detected. Manual resolution required."; exit 1; }
          git push origin test --force-with-lease

鉴于我使用挤压合并策略来保持

main
分支历史记录干净,这是确保
test
分支保持最新的最佳方法吗?

git github-actions
1个回答
0
投票

我也在考虑类似的方法,我认为你建议的方法是正确的。

这不是一个明确的答案,但我建议使用

[synchronize][1]
! 当 PR 的基础分支更新时,会触发该操作再次运行。(来自 gpt)

© www.soinside.com 2019 - 2024. All rights reserved.