If you commit locally and your remote hasn't been changed. Git pull will return information that your repository is up-to-date.
If somebody pushed some changes and you don't have them locally git won't let you push. You will have to merge these changes to your local repo - and for the most part git pull will do that (in cases when two or more different commits change the same code there may be conflicts that you will have to resolve manually)
Also it's worth noting that it actually requires some effort to loose something permanently in git.