Git pull not pulling everything

Solution 1:

If you always want your server version to reflect a commit from your repo, it's probably better to use git reset instead of git pull - that way you never invoke merge functionality, but instead set all of the files to exactly what they are in the commit you reset to. For example:

git fetch origin master
git reset --hard FETCH_HEAD

Solution 2:

You can use git pull origin branch_name of the github.

Ex: If I have a production branch on GitHub, then I will write git pull origin production which will give me all the latest commits.

Only doing git pull sometimes does not give you the latest commits of production branch even though you are working on that branch and committing it.

Behind the scenes working

http://git-scm.com/docs/git-pull#_default_behaviour

Explanation and Examples

Solution 3:

Try cleaning-up your local repository with and then run git pull:

$ git gc --prune=now
$ git remote prune origin