Merge upstream branches #14716
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
| # solution from https://stackoverflow.com/questions/23793062/can-forks-be-synced-automatically-in-github | |
| name: Merge upstream branches | |
| on: | |
| schedule: | |
| # actually, ~5 minutes is the highest | |
| # effective frequency you will get | |
| - cron: '* * * * *' | |
| jobs: | |
| merge: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - name: Merge upstream | |
| run: | | |
| git config --global user.name 'user12257' | |
| git config --global user.email 'user12257@users.noreply.github.com' | |
| # "git checkout master" is unnecessary, already here by default | |
| 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/cmintey/wishlist.git | |
| git fetch upstream | |
| # Check if there are changes to merge | |
| if git merge --no-edit upstream/main; then | |
| git push origin main | |
| else | |
| echo "No changes to merge." | |
| fi |