diff --git a/.github/workflows/sync-with-upstream.yml b/.github/workflows/sync-with-upstream.yml new file mode 100644 index 00000000000..5a0f908da1e --- /dev/null +++ b/.github/workflows/sync-with-upstream.yml @@ -0,0 +1,35 @@ +name: 'Sync main branch with upstream' + +on: workflow_dispatch + +jobs: + sync-with-upstream: + runs-on: ubuntu-latest + name: Sync main branch with upstream + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Configure git + run: | + git config --global user.name "shiftbot" + git config --global user.email "github@brendanforster.com" + git remote add upstream https://github.com/desktop/desktop.git + shell: bash + - name: Push development changes from upstream to fork + id: sync-development-branch + run: | + git fetch upstream development + git fetch origin development + git checkout -b development upstream/development + git push origin development + shell: bash + - name: Rebase Linux customizations on top of development branch + id: rebase-linux-branch + run: | + git fetch origin linux + git checkout linux + git rebase development linux + git status + git log development...linux --oneline + shell: bash + # TODO: force push this when we're confident that the rebase has succeeded?