sponsor Vim development Vim logo Vim Book Ad

easygit : A git wrapper focus on simplily and usability

 script karma  Rating 11/5, Downloaded by 681  Comments, bugs, improvements  Vim wiki

created by
qiming zhao
script type
Easygit  is hosted at github: https://github.com/chemzqm/vim-easygit

It's git wrapper plugin made to replace [fugitive](https://github.com/tpope/vim-fugitive),
it can be used together with fugitive as commands are disabled by default.

Easygit tried to introduce cleaner code and behaviour more friendly to user.


Some command use command line utilities, they possibly not works on windows.


Easygit tris hard to works well 80% of daily usage git commands while avoid
overhead complexity.

* All commands work on the git repository of current file, not current
CWD!!  This could be a life saving if you switch the file of different
repo a lot, to make the command behaviour reasonable, you can set
|g:easygit_auto_lcd| to 1.

* Commands would always available, just set |g:easygit_enable_command|
to 1

* No useless messages any more, no press any key to continue

* No wait, dispatch remote commands to shell if  |vim-dispatch| or
|vim-iterm-start| available

* Expose autoload functions, could be used anywhere.

* Well designed default options, works out of box.

* Friendly to other plugins, commands are disabled by default to avoid
conflict, |buftype| are set to nofile and |bufhidden| are set to
delete for the temporary buffers.

* Enhanced gitlog support, implemented in a separate plugin
https://github.com/chemzqm/unite-git-log, which make uses the power of


Commands are disabled by default to make it works with fugitive by default, , you have to add

    let g:easygit_enable_command = 1

to your `.vimrc`, no further action required.

* *Gcd*             make vim cd to git root directory.
* *Glcd*            make vim lcd to git root directory.
* *Gblame*          Git blame current file, you can use `p` to preview commit and `d`
to diff with current file.
* *GcommitCurrent*  Git commit current file with message as command args.
* *GdiffThis*       Side by side diff of current file with head or any ref.
* *Gcommit*         Git commit with command line argument.
* *Gedit*           Edit git reference from git show.
* *Gdiff*           Git diff with command line argument.
* *Gremove*         Git remove with command line argument, remove current file
when arguments empty.
* *Grename*         Rename current by git mv, file in buffer list would react the changes.
* *Gmove*           Git mv with command line argument.
* *Gcheckout*       Git checkout with command line argument.
* *Gpush*           Git push with arguments, dispatch when possible.
* *Gpull*           Git pull with arguments, dispatch when possible.
* *Gfetch*          Git fetch with arguments, dispatch when possible.
* *Gadd*            Git add with arguments.
* *Gstatus*         Show git status in a temporary buffer.
* *Ggrep*           Git grep repo of current file, and show result in quickfix
* *Gmerge*          Git merge with branch complete

Those commands have reasonable complete setting, use `<tab>` to complete

See more information at doc/easygit.txt

## Feedback

Feel free to let me know if you have any problem with this script at https://github.com/chemzqm/vim-easygit/issues
install details
Install with your favorite plugin managers like NeoBundle/Plugin/Plug is prefered

NeoBundle \\'chemzqm/easygit\\'
Plugin \\'chemzqm/easygit\\'
Plug \\'chemzqm/easygit\\'

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
easygit.zip 0.3.0 2016-01-08 7.0 qiming zhao Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.