diff --git a/autoload/fugitive.vim b/autoload/fugitive.vim index a4a1831..8db0a70 100644 --- a/autoload/fugitive.vim +++ b/autoload/fugitive.vim @@ -637,8 +637,10 @@ function! s:PrepareJob(...) abort let cmd = flags + args let tree = s:Tree(dir) if empty(tree) || index(cmd, '--') == len(cmd) - 1 + let dict.cwd = getcwd() call extend(cmd, git + ['--git-dir=' . FugitiveGitPath(dir)], 'keep') else + let dict.cwd = FugitiveVimPath(tree) call extend(cmd, git + ['-C', FugitiveGitPath(tree)], 'keep') endif return s:JobOpts(cmd, exec_env) + [dict]