When Git lies to you - "everything up to date" - when it isn't (17 feb 13)
It's probably because you are in "detatched head mode". Sounds painful, but there's a cure:
git push repo master
# It says "Everything up to date", but it's lying.
# memorize the 20-byte hex number after the word 'commit'
git checkout master
For a more detailed discussion by people who actually know what they're talking about, the redoubtable stackoverflow.com is once again on the ball: