Doing manually what should be automatic is frustrating:
Your team spends too much time managing pull requests. That makes your development tedious. Especially when you have to:
Decide who should review:
You have to manually set assignees for your code reviews to be done. You know that some people should review some pull requests based on their authors, modified files, labels — or a combination of those.
Set all those labels yourself:
You know you could write rules to categorize your pull requests with labels.
Rebase your branches:
Development never stops, and your pull requests are not always up to date with their base branch. You have to update them yourself to pass the CI correctly with the latest commits.
Wait for your CI to finish:
You approved the pull request, but it won't be merged until you wait for the CI to finish. You have to get back to the pull request to manually click on the merge button.
Backport the pull request to another branch:
You just committed a bug fix, and now you need to create a bunch of pull requests to get it on other branches. Here you go, typing a ton of git command and clicking in GitHub.