This isn't meant to be a comprehensive list of Git commands, just the ones we find ourselves using over and over again.
git add .
Called from the top-level directory of the repository.
Adds all updates (file modifications, new files, deletions) to the Git index, usually in preparation for a commit
git commit -v
Commits changes in the index to the branch. The "-v" (verbose) displays the changes going into the commit in diff format
git status
Displays changes in progress. These are updates that may or may not have been added but are definitely not committed.
git log
Lists all the commits for the current branch
git branch -a
Displays all the branches known to the local repository. This includes local and remote repository branches
git checkout [branch]
Checks out specified branch to the working tree (aka populates the repository directory structure with the appropriate version of files)
git checkout -f
Forces Git to re-checkout the current branch. This gets rid of modified files and added updates to the index. Useful if you've made changes that you don't want any more. Doesn't work for changes that you've already committed. Similar to
svn revert
in Subversion.
git pull
Pulls in changes based on the current branch's tracking setting. Fetches updated branch information from the tracked remote repository and merges the updates from the tracked remote branch
git push
Pushes changes to a remote repository based on the current branch's tracking settings. Pushes are made to the tracked remote repository.
FYI, by default Git will automatically update all branches on the remote repository that match the name of a local repository branch. You can override this by adding a "push" mapping in the remote repository's connection section in the local .git/config.
git push [remote] [local branch]:[remote branch]
Push up changes from the specified local branch to the specified remote branch on the remote repository.
This is required for new branches that don't exist on the remote. You'll also need to fully specify the remote branch with refs/heads/[remote branch].
git merge [branch]
Merges the changes from the specified branch to the current branch
git rebase [branch]
Resets the starting point of the current branch to the specified branch and reapplies all the updates that have been made
git config -l
Lists the configuration information for the repository. This includes remote connections and tracking information for branches