Jenkins, itself located on GitHub, has a number of plugins for integrating into GitHub. The two primary avenues for integrating your Jenkins instance with GitHub are with "build integration," using GitHub to trigger builds, or with "authentication integration," using GitHub as the source of authentication information to secure a Jenkins instance.
With the help of the Git plugin Jenkins can easily pull source code from any Git repository that the Jenkins build node can access.
The GitHub plugin extends upon that integration further by providing improved bi-directional integration with GitHub. Allowing you to set up a Service Hook which will hit your Jenkins instance every time a change is pushed to GitHub.
Going the other direction, the GitHub plugin can also feed information back into GitHub via the commit status API, more details here.
Using the GitHub Authentication plugin it is possible to use GitHub’s own authentication scheme for implementing authentication in your Jenkins instance.
The setup guide will help walk you through configuring the GitHub OAuth side, and your Jenkins instance, to provide easy authentication/authorization for users.
integrates Jenkins jobs with GitHub repositories for triggering builds and reporting commit status
use GitHub as the authentication provider for your Jenkins instance
use Git repositories as the source of code for a Jenkins job
trigger builds via the GitHub SQS (AWS) service hook