I just turned off the merge queue for my org becau...
# how-do-i
t
I just turned off the merge queue for my org because we found that it was just causing lots of extra CI time and waiting time for engineers. However, I still want graphite stacking - and to merge all PRs in a stack at once, which was amazing. But now when we merge a stack, it seems to be merging a PR one at a time, and then rerunning CI for each PR next in the stack - is there a way to have us merge all PRs in a stack at once without the merge queue?
g
hey Tommy, there isn't a way to outside of the merge queue presently but it's on our radar as we build out the next generation of these features in *Cursor Origin**!*
t
So I would need to move from github to Cursor Origin to use this feature in the future? Could you please add this as a feature in Github? Are there workarounds? Like I imagine all I need to do is update the top PR in a branch to point at
main
instead of its parent, and then merge manually in github. But this seems like a bad process and cumbersome to tell engineers
g
Yeah, another manual workaround is to use
gt fold
to squash the PRs within the stack into a single PR prior to merge time.
t
Ok it would be great if there was a way to make that automatic when merging a stack, and while still doing 1 commit into main per PR in the stack
Also if we run gt fold we will have to rerun CI again - which is why I removed the MQ, as it was adding an extra CI run in the MQ PR for every stack - even if the MQ was empty
Also with gt fold we would lose the stack and all the reviews and PR bodies
Thanks for the fast response btw! Appreciate it
🫡 1
So in the end our solution was to add the merge queue back, but add a condition on all our CI to just skip if the branch is a merge queue branch That is, in github actions do this:
Copy code
jobs:
  lint:
    runs-on: ubuntu-latest
    if: ${{ !startsWith(github.head_ref, 'gtmq_') }}