There are many excellent tutorials on using git (see below). This page is just a list of git commands for my reference.
sudo apt-get install git gitk git-gui git config --global user.name your name git config --global user.email your@email git config --list git config --global core.editor leafpad git config --global merge.tool vimdiff leafpad .gitignore git help subject git init git add src/*.c git add src/*.h git add lkr/*.lkr git add Makefile git rm file_to_be_removed.txt git rm --cached file_to_be_removed_from_git_tracking.txt git mv oldname.txt newname.txt git commit -m 'comment' git commit -am 'comment' git commit -a --amend git status git diff git diff --cached git log # remove files from repository without deleting them from the local file system # http://stackoverflow.com/q/1143796 # http://stackoverflow.com/q/2604625 git rm --cached file_no_longer_to_be_tracked git rm --cached -r directory_no_longer_to_be_tracked git rm --cached `git ls-files -i -X .gitignore` # show branches in tree format # http://stackoverflow.com/q/1838873 git log --graph --all --decorate --oneline # diff between tips of two branches git diff branch_1..branch_2 git diff branch_2..branch_1 git diff branch_1...branch_2 gitk git clone git://github.com/schacon/grit.git mygrit ssh username@server # on remote gitserver mkdir /opt/git/project_directory cd /opt/git/project_directory git init --bare --shared exit # on local machine git clone ssh://username@gitserver/opt/git/project_directory local_directory git remote add origin git@gitserver:/opt/git/project.git git fetch origin git merge origin/master git push origin master # and many many more possibilities...
A short selection of reference links: