A pull request, or PR, is a way of sharing code and developing new features. A pull request provides a way for one developer to share their code with another and for everyone involved to discuss the proposed change. They combine merging brnaches, discussing proposed changes and revieing code into a single place.
You don't even need to be using GitHub or developing open source software to use pull requests. Most source code hosting provide support for pull requests. At Crisp we use pull requests many times each day to keep track of feature branches, review code changes and enforce our branching policy.