Commit

git commit -m 'commit message'

Commits the staged changes to repo's history.

git commit

Opens a text editor (vim be default) so that you can add a commit message. For my information on vim, see this link (TODO).
Unless you are committing a merge, this is not the recommended method of committing.

git commit -am 'commit message'

Automatically adds any changes to tracked files and commits them. This is only usefull if you didn't add any files during this commit.

Official documentation link.