mirror of
https://github.com/tpope/vim-fugitive.git
synced 2025-11-14 06:13:51 -05:00
Handle both amended and new commits during rebase
References https://github.com/tpope/vim-fugitive/issues/1329
This commit is contained in:
@@ -3696,11 +3696,11 @@ function! s:MergeRebase(cmd, bang, mods, args, ...) abort
|
|||||||
call fugitive#ReloadStatus(dir, 1)
|
call fugitive#ReloadStatus(dir, 1)
|
||||||
if empty(filter(getqflist(),'v:val.valid && v:val.type !=# "I"'))
|
if empty(filter(getqflist(),'v:val.valid && v:val.type !=# "I"'))
|
||||||
if a:cmd =~# '^rebase' &&
|
if a:cmd =~# '^rebase' &&
|
||||||
\ filereadable(fugitive#Find('.git/rebase-merge/amend', dir)) &&
|
|
||||||
\ filereadable(fugitive#Find('.git/rebase-merge/done', dir)) &&
|
\ filereadable(fugitive#Find('.git/rebase-merge/done', dir)) &&
|
||||||
\ get(readfile(fugitive#Find('.git/rebase-merge/done', dir)), -1, '') =~# '^[^e]'
|
\ get(readfile(fugitive#Find('.git/rebase-merge/done', dir)), -1, '') =~# '^[^bep]'
|
||||||
cclose
|
cclose
|
||||||
return 'exe ' . string(mods . 'Gcommit --amend -n -F ' . s:fnameescape(fugitive#Find('.git/rebase-merge/message', dir)) . ' -e') . '|let b:fugitive_commit_rebase = 1'
|
let amend = filereadable(fugitive#Find('.git/rebase-merge/amend', dir)) ? '--amend ' : ''
|
||||||
|
return 'exe ' . string(mods . 'Gcommit ' . amend . '-n -F ' . s:fnameescape(fugitive#Find('.git/rebase-merge/message', dir)) . ' -e') . '|let b:fugitive_commit_rebase = 1'
|
||||||
elseif !had_merge_msg && filereadable(fugitive#Find('.git/MERGE_MSG', dir))
|
elseif !had_merge_msg && filereadable(fugitive#Find('.git/MERGE_MSG', dir))
|
||||||
cclose
|
cclose
|
||||||
return mods . 'Gcommit --no-status -n -t '.s:fnameescape(fugitive#Find('.git/MERGE_MSG', dir))
|
return mods . 'Gcommit --no-status -n -t '.s:fnameescape(fugitive#Find('.git/MERGE_MSG', dir))
|
||||||
|
|||||||
Reference in New Issue
Block a user