1 By default, git pull creates merge commits which add noise and complexity to the code history.
2 For example, if someone deletes branch foo from the remote repo, you'll still see origin/foo .
3 The git pull command is safe so long as it only performs fast-forward merges.