Skip to content

Merge upstream branches #25801

Merge upstream branches

Merge upstream branches #25801

Workflow file for this run

# .github/workflows/example.yml
name: Merge upstream branches
on:
workflow_dispatch:
schedule:
# actually, ~5 minutes is the highest
# effective frequency you will get
- cron: '0 * * * *'
jobs:
merge-upstream-to-all-branches:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
- name: Merge upstream
run: |
git config --global user.name 'bot'
git config --global user.email '[email protected]'
for BRANCH in `git branch --list|sed 's/\*//g'`;
do
git checkout $BRANCH
git fetch --all
git pull --unshallow # this option is very important, you would get
# complains about unrelated histories without it.
# (but actions/checkout@v2 can also be instructed
# to fetch all git depth right from the start)
git remote add upstream https://github.com/torvalds/linux
git fetch upstream master
git pull --rebase upstream master
git push -f origin $BRANCH
git remote remove upstream
done