What is the difference between the terms:
This first thing that is important to understand about Git is that it thinks about version control in a very different way than Subversion or Perforce, or about any SCM you can get used to. It is often easier to learn Git by trying to forget your assumptions about how version control works, and try to think about it in Git.
- http://gitref.org/
Read this: http://git.or.cz/course/svn.html
It could be googled. This is probably why someone answered the question. I googled the "Git Glossary" and this was the first result -
http://www.kernel.org/pub/software/scm/git/docs/gitglossary.html
This explains most of what you ask.
http://ndpsoftware.com/git-cheatsheet.html is a great link.