You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub中PR关闭时如何自动删除分支?

在PR关闭时自动删除分支的方法

GitHub原生仓库设置里确实没有提供PR关闭时自动删除分支的选项,但可以通过GitHub Actions实现这个需求,具体操作如下:

  • 在仓库的.github/workflows/目录下创建一个工作流文件,比如命名为delete-closed-pr-branch.yml
  • 将以下代码写入该文件:
name: Delete Closed PR Branch

on:
  pull_request:
    types: [closed]

jobs:
  delete-branch:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Delete the target branch
        run: |
          BRANCH_NAME="${{ github.head_ref }}"
          git push origin --delete "$BRANCH_NAME"

注意事项

  • 确保仓库给GitHub Actions分配了足够权限:在仓库Settings > Actions > General里,确认"Workflow permissions"设置为"Read and write permissions"
  • 如果PR对应的源分支是仓库的保护分支(如main/master),该操作会失败,因为保护分支禁止直接删除
  • 针对外部贡献者从fork仓库提交的PR,由于权限限制,这个工作流无法删除fork仓库里的分支,只能删除当前仓库内的分支

内容的提问来源于stack exchange,提问作者dtandon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 07:55:25