Repository navigation
feat(ci): sync forks with DIYgod/RSSHub once a day - #23734
Merged
Merged
Conversation
GitHub suspended the Pull app on 2026-10-01, so forks that relied on it to stay up to date stopped receiving RSSHub changes. Add a workflow that only runs in forks and updates the default branch from RSSHub daily or on demand. The default token cannot update files under .github/workflows, which RSSHub changes often, so the workflow prefers a SYNC_TOKEN secret with the workflow scope when the fork owner adds one. gh repo sync never force-resets, so a fork with conflicting changes fails instead of losing them. Refs #23673
This was referenced Oct 31, 2026
TonyRL
approved these changes
Oct 31, 2026
pseudoyu
added a commit
to RSSNext/rsshub-docs
that referenced
this pull request
Oct 31, 2026
GitHub suspended the Pull app on 2026-10-01 (wei/pull#674). Add a "Keep Your Fork Updated" section that covers the manual Sync fork button and the Sync fork workflow from DIYgod/RSSHub#23734 with a SYNC_TOKEN secret, and point the Vercel, Heroku and Fly.io steps at it in both languages. Fork owners are told to keep only the Sync fork workflow enabled, with a danger callout about RSSHub's other workflows. Refs DIYgod/RSSHub#23673
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Involved Issue / 该 PR 相关 Issue
Close #23673
Example for the Proposed Route(s) / 路由地址示例
New RSS Route Checklist / 新 RSS 路由检查表
PuppeteerNote / 说明
In short: GitHub turned off the Pull app on October 1, so forks that used it to stay up to date stopped getting RSSHub changes (#23673). This PR adds a small workflow that runs only in forks and updates them from RSSHub once a day.
How fork updates work today
Why
What this PR changes
SYNC_TOKEN(a personal token that is allowed to change workflow files), the workflow uses it, so updates also work on days RSSHub changes a workflow. Without it, the default token is used, which works on the other days.Technical approach
.github/workflows/sync-fork.ymlrunsgh repo syncon the fork on a daily cron and onworkflow_dispatch, guarded bygithub.repository_owner != 'DIYgod'likedependabot-fork.yml.GH_TOKENissecrets.SYNC_TOKEN || github.token, and the job only asks forcontents: write.gh repo syncwithout--forceonly fast-forwards or merges, and fails on a conflict.To decide before merging
github.repository == 'DIYgod/RSSHub'; I left that out to keep this PR small.Tests: actionlint and oxfmt pass. Not run end to end, because I have no fork to run it in; a fork owner can try it with "Run workflow".
Reviewer: TonyRL, who maintains the workflows. This needs a maintainer decision because it affects every fork that turns on Actions.