diff --git a/runtime/ftplugin/git.vim b/runtime/ftplugin/git.vim
new file mode 100644
index 0000000..37888b1
--- /dev/null
+++ b/runtime/ftplugin/git.vim
@@ -0,0 +1,34 @@
+" Vim filetype plugin
+" Language:	generic git output
+" Maintainer:	Tim Pope <vimNOSPAM@tpope.info>
+" Last Change:	2008 Feb 27
+
+" Only do this when not done yet for this buffer
+if (exists("b:did_ftplugin"))
+    finish
+endif
+let b:did_ftplugin = 1
+
+if !exists('b:git_dir')
+    if expand('%:p') =~# '\.git\>'
+        let b:git_dir = matchstr(expand('%:p'),'.*\.git\>')
+    elseif $GIT_DIR != ''
+        let b:git_dir = $GIT_DIR
+    endif
+    if has('win32') || has('win64')
+        let b:git_dir = substitute(b:git_dir,'\\','/','g')
+    endif
+endif
+
+if exists('*shellescape') && exists('b:git_dir') && b:git_dir != ''
+    if b:git_dir =~# '/\.git$' " Not a bare repository
+        let &l:path = escape(fnamemodify(b:git_dir,':t'),'\, ').','.&l:path
+    endif
+    let &l:path = escape(b:git_dir,'\, ').','.&l:path
+    let &l:keywordprg = 'git --git-dir='.shellescape(b:git_dir).' show'
+else
+    setlocal keywordprg=git\ show
+endif
+
+setlocal includeexpr=substitute(v:fname,'^[^/]\\+/','','')
+let b:undo_ftplugin = "setl keywordprg< path< includeexpr<"
