1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-03-26 04:00:29 +08:00
Wang Shidong 73a8465bce
Add command to manage pull request
* Add command to create pull request

* Update

* Update

* Update
2019-09-26 01:32:34 +08:00

42 lines
1.4 KiB
VimL

function! SpaceVim#dev#pull#create(branch)
let title = input('title:')
call inputsave()
let username = input('github username:')
let password = input('github password:')
call inputrestore()
let pull = {
\ 'title' : title,
\ 'head' : 'wsdjeg:' . a:branch,
\ 'base' : 'master'
\ }
let respons = github#api#pulls#create('SpaceVim', 'SpaceVim', username, password, pull)
normal! :
if !empty(respons) && get(respons, 'number', 0) > 0
echon 'Pull request #' . respons.number . ' has been created!'
elseif !empty(respons)
let msg = get(respons, 'message', '')
echon 'Failed to create pull request ' . respons.number . ':' . msg
endif
endfunction
function! SpaceVim#dev#pull#merge(id) abort
let commit_title = input('commit title:')
call inputsave()
let username = input('github username:')
let password = input('github password:')
call inputrestore()
let commit = {
\ 'commit_title' : commit_title,
\ 'merge_method' : 'squash'
\ }
let respons = github#api#pulls#Merge('SpaceVim', 'SpaceVim', a:id, commit, username, password)
normal! :
if !empty(respons) && has_key(respons, 'sha')
echon 'Pull request #' . a:id . ' has been merged!'
elseif !empty(respons)
let msg = get(respons, 'message', '')
echon 'Failed to merge pull request ' . a:id . ':' . msg
endif
endfunction