I also get that "silo" feeling from git's pull requests, but for a different reason. That great big "merge & close request" button seems nice and handy, but if you press it, you're doing it wrong. You should probably be merging it locally, running your automated tests and some manual sanity checks, and then pushing it to github. What github should do is have a button that pops up a dialog containing some commands you can cut and paste to the command line to do just that. My flow looks something like this:
- click around to find the author's repository URL
- git remote add it
- git fetch that remote
- copy the author's issue branch name from the pull request page
- git merge that
- run the automated tests, and check functionality
- then either git push or delete my own master branch and then check it out as a tracking branch from origin/master
That last step is probably suboptimal, but it doesn't happen often and I know how to do it that way. It illustrates my point, though: why doesn't github tell me how to do it?