fugitive在vim中使用git

发布时间 2023-08-08 14:24:46作者: Uoyue

github链接vim-fugitive

安装

" 在.vimrc 中加入 
Plug 'tpope/vim-fugitive' 

" nerdtree显示git文件情况
" Plug 'Xuyuanp/nerdtree-git-plugin' 
" let g:NERDTreeGitStatusIndicatorMapCustom = {
                \ 'Modified'  :'✹',
                \ 'Staged'    :'✚',
                \ 'Untracked' :'✭',
                \ 'Renamed'   :'➜',
                \ 'Unmerged'  :'═',
                \ 'Deleted'   :'✖',
                \ 'Dirty'     :'✗',
                \ 'Ignored'   :'☒',
                \ 'Clean'     :'✔︎',
                \ 'Unknown'   :'?',
" \ }

使用

命令 解释
:Git 更直观地查看Git status
:Gllog 查看历史提交记录
:Git add % == Gwrite 将当前文件存入暂存区
:Git checkout % == Gread 恢复当前文件到最新版本
:Git rm % == Gremove 删除当前文件和相应的 vim buffer
:Git mv % == Gmove 重命名当前文件和相应的 vim buffer
:Git commit 弹出面板写提交描述并提交 :wq 命令完成
:Gblame 查看提交者和提交记录

推荐映射

nnoremap gw :Gwrite<CR>
nnoremap gr :Gread <CR>
nnoremap gl :Gllog<CR>
nnoremap gp :Git push<CR>
nnoremap gm :Git commit<CR>

总结

  • fugitive可以更直观的查看Git状态,像Git,Gllog,Gblame
  • 至于 Gwrite,Gread,Git commit 其实可以自定义命令实现
  • 推荐搭配nerdtree-git-plugin
  • 再推荐一个lazygit比fugitive更直观的git的命令行工具

后续我会继续补充