github - 自动拒绝更新某些文件的 PR
问题描述
我结合使用 GitHub Actions 和 GitHub Pages 来生成和托管许多“半静态”站点。那是在白天使用计划的 GitHub 操作定期更新的站点。这是一个例子。
repos 包含构成站点的 HTML 页面,但这些页面都是由 GitHub Actions 生成的。在拉取请求中更新这些文件是没有意义的,因为下次重新生成站点时更改将被覆盖。
我在 repos 的 README 中提到了这一点,但我仍然从更改输出文件的人那里获得 PR,而不是用于构建文件的模板。
为了让我的生活更轻松,我想知道是否有办法标记这些文件,以便任何更改这些文件的 PR 都会自动拒绝,并带有礼貌的注释来解释问题。或者,有没有办法标记这些文件,以便 GitHub 知道它们不应该包含在 PR 中?
解决方案
这是一个有趣的想法,所以我尝试了并且成功了!
- 我必须将
pull_request_target
其用作分叉存储库的事件。更多信息可以在https://github.blog/2020-08-03-github-actions-improvements-for-fork-and-pull-request-workflows/找到。 - 我已经选择
opened
了reopened
活动类型,但是如果您需要,请从这里找到更多信息:https ://docs.github.com/en/actions/learn-github-actions/events-that-trigger-workflows#pull_request untouchable_file
目前,当文件作为更改包含在拉取请求中时会触发此 github 操作,但如果您需要更复杂的路径过滤器匹配,请参见此处: https ://docs.github.com/en/actions/learn- github-actions/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet
name: Test workflow
on:
pull_request_target:
types: [opened, reopened]
paths:
- 'untouchable_file'
jobs:
test:
runs-on: "ubuntu-latest"
steps:
- uses: superbrothers/close-pull-request@v3
with:
comment: "hi. please do not touch 'untouchable_file'."
推荐阅读
- java - 使用 Logstash 索引从 Cassandra 到 Solr 的项目
- php - 为什么邮件程序在 php 中不起作用,我在哪里弄错了?
- javascript - 在确认弹出窗口(Node、Express、Jade)中单击 Ok 时如何发出 POST 请求而不是 GET
- python-3.x - 如何处理 ValueError:Julian Day 必须是正数
- python - Pyramid 覆盖默认请求日志以添加新参数
- javascript - 让一个 div 出现,然后保持刷新 Javascript
- angular - ** ionic build --prod ** 在我为生产而构建时不起作用
- python - pygame,如何使用 sprite.Group.draw() 绘制所有精灵?
- json - 如何更改我的 google JSON Search API 中的查询?
- c - 将 strlen() 与数组整数或浮点数一起使用