From 9fec8aadc54372cbea6ac3c9cf6909054140b573 Mon Sep 17 00:00:00 2001 From: Tim Pope Date: Wed, 19 Sep 2018 17:37:06 -0400 Subject: [PATCH] Use merge-base as starting point for ranged :Gbrowse --- autoload/fugitive.vim | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/autoload/fugitive.vim b/autoload/fugitive.vim index afc396a..75270d1 100644 --- a/autoload/fugitive.vim +++ b/autoload/fugitive.vim @@ -3346,8 +3346,11 @@ function! s:Browse(bang,line1,count,...) abort else let commit = '' if len(merge) - let remotehead = cdir . '/refs/remotes/' . remote . '/' . merge - let commit = filereadable(remotehead) ? get(readfile(remotehead), 0, '') : '' + let owner = s:Owner(@%) + let commit = s:TreeChomp('merge-base', 'refs/remotes/' . remote . '/' . merge, empty(owner) ? 'HEAD' : owner, '--') + if v:shell_error + let commit = '' + endif if a:count && !a:0 && commit =~# '^\x\{40\}$' let blame_list = tempname() call writefile([commit, ''], blame_list, 'b')