updated for version 7.2a
diff --git a/runtime/syntax/gitconfig.vim b/runtime/syntax/gitconfig.vim
new file mode 100644
index 0000000..f44ce2b
--- /dev/null
+++ b/runtime/syntax/gitconfig.vim
@@ -0,0 +1,38 @@
+" Vim syntax file
+" Language:	git config file
+" Maintainer:	Tim Pope <vimNOSPAM@tpope.info>
+" Filenames:	gitconfig, .gitconfig, *.git/config
+" Last Change:	2008 Jun 04
+
+if exists("b:current_syntax")
+    finish
+endif
+
+setlocal iskeyword+=-
+setlocal iskeyword-=_
+syn case ignore
+syn sync minlines=10
+
+syn match   gitconfigComment	"[#;].*"
+syn match   gitconfigSection	"\%(^\s*\)\@<=\[[a-z0-9.-]\+\]"
+syn match   gitconfigSection	'\%(^\s*\)\@<=\[[a-z0-9.-]\+ \+\"\%([^\\"]\|\\.\)*"\]'
+syn match   gitconfigVariable	 "\%(^\s*\)\@<=\a\k*\%(\s*\%([=#;]\|$\)\)\@=" nextgroup=gitconfigAssignment skipwhite
+syn region  gitconfigAssignment  matchgroup=gitconfigNone start=+=\s*+ skip=+\\+ end=+\s*$+ contained contains=gitconfigBoolean,gitconfigNumber,gitConfigString,gitConfigEscape,gitConfigError,gitconfigComment keepend
+syn keyword gitconfigBoolean true false yes no contained
+syn match   gitconfigNumber  "\d\+" contained
+syn region  gitconfigString  matchgroup=gitconfigDelim start=+"+ skip=+\\+ end=+"+ matchgroup=gitconfigError end=+[^\\"]\%#\@!$+ contained contains=gitconfigEscape,gitconfigEscapeError
+syn match   gitconfigError  +\\.+	 contained
+syn match   gitconfigEscape +\\[\\"ntb]+ contained
+syn match   gitconfigEscape +\\$+	 contained
+
+hi def link gitconfigComment		Comment
+hi def link gitconfigSection		Keyword
+hi def link gitconfigVariable		Identifier
+hi def link gitconfigBoolean		Boolean
+hi def link gitconfigNumber		Number
+hi def link gitconfigString		String
+hi def link gitconfigDelim		Delimiter
+hi def link gitconfigEscape		Delimiter
+hi def link gitconfigError		Error
+
+let b:current_syntax = "gitconfig"