.gitconfig

:!: This page shows a working example of a .gitconfig file. You can create a version of this file manually, or use the 'git config' commands as shown on the git walkthrough page.

Your global git configuration is kept in ~/.gitconfig. The various values I'm using are listed below with explanations.

~/.gitconfig

# the names and emails that are inserted with your commits by default
[user]
	name = Your Name
	email = youremail@company.com

# carriage return/line feed preferences
[core]
	autocrlf = false
	safecrlf = false

# I use git gui a lot, and if you type a partial commit message and then close
# git gui, it will be stored in a file; we use this file as a template if we
# later do a command line commit
[commit]
	template = .git/GITGUI_MSG

# set up diff and merge tools in windows (Tortoise/WinMerge)
[diff]
	tool = winmerge
	#this runs git diff in external tool
	#external = /cygdrive/h/git-diff-wrapper.sh
[difftool "winmerge"]
	cmd = /cygdrive/h/git-difftool-wrapper.sh \"$LOCAL\" \"$REMOTE\"
[gui]
	gcwarning = false
[merge]
	tool = tortoise
[mergetool "tortoise"]
	cmd = \"c:/Progra~1/TortoiseGit/bin/TortoiseMerge.exe\" /base:\"$BASE\" /theirs:\"$REMOTE\" /mine:\"$LOCAL\" /merged:\"$MERGED\"

# when using git svn stuff, this tells git what your svn user info is
[svn]
	authorsfile = /cygdrive/c/htdocs/projects/svnusers.txt