If you are an absolute beginner or you have a little knowledge of GitHub in that case to learn GitHub and all its concepts such as pull request or creating a repository in detail which is necessary for a programmer you can learn it by taking up the GitHub training course. If you like to read then you can have a look at the GitHub tutorial. If you want to learn it by watching the video tutorial then you can have a look at the following tutorial:-
Let me tell you some points that you can follow while you start learning GitHub you can start learning GitHub by a simple project, spend some time, try to push some branches etc. These things are quite easy to do if you know any other version control tools like CVS, Subversion or Mercurial. Another thing is you can use the git-book documentation which is quite good. Some of the additional features of Github such as issues, pages etc will be quite easy to learn if you know the GitHub basics already. It also makes sense to learn markdown to properly format text on Github.