An explanation of why one should probably use Git as a source rather than GitHub in Jenkins.
Trigger your multi-branch projects to build when you push changes to GitHub.
Create a GitHub deploy key in order to give your pipelines restricted access to just one project.
Learn how to integrate your Jenkins "pipeline" project with GitHub so that your project builds when specific branches are pushed to (e.g. staging/production).
Learn how to set up a webhook in Github in order to automatically update the package in Packagist.