What is the difference between 'git pull' and 'git fetch'?

What are the differences between git pull and git fetch?