|
|
||
|---|---|---|
| forgit.plugin.sh | ||
| forgit.plugin.zsh | ||
| LICENSE.txt | ||
| README.md | ||
forgit
forgit is a utility tool for git taking advantage of fuzzy finder fzf.
Installation
Make sure you have fzf installed.
for zplug (Recommend)
zplug 'wfxr/forgit', defer:1
for zgen
zgen load wfxr/forgit
for antigen
antigen bundle wfxr/forgit
Manually
zsh
Clone this repo and source forgit.plugin.zsh in ~/.zshrc.
bash
Clone this repo and source forgit.plugin.sh in ~/.bashrc.
Commands
ga
Interactive git add selector
glo
Interactive git log viewer
gi
Interactive .gitignore generator
gd
Interactive git diff viewer
gcf
Interactive git checkout <file> selector
gss
Interactive git stash viewer
gclean
Interactive git clean selector
Default keybinds
| Keybind | Action |
|---|---|
<Enter> |
Confirm |
<Tab> |
Toggle mark |
<C-k/p> |
Selection up |
<C-j/n> |
Selection down |
<A-k/p> |
Preview up |
<A-j/n> |
Preview down |
<A-w> |
Toggle preview wrap |
<?> |
Toggle preview window |
<C-r> |
Toggle selection |
<C-s> |
Toggle sort |
Custom options
You can change the default aliases by defining these variables below.
(To disable all aliases, Set the FORGIT_NO_ALIASES flag.)
# Define them before sourcing the plugin if you don't use any plugin manager.
forgit_log=glo
forgit_diff=gd
forgit_add=ga
forgit_ignore=gi
forgit_restore=gcf
forgit_clean=gclean
forgit_stash_show=gss
You can add custom fzf options for forgit, including keybinds, layout, etc.
(No need to repeat the options already defined in FZF_DEFAULT_OPTS)
FORGIT_FZF_DEFAULT_OPTS="
--exact
--border
--cycle
--reverse
--height '80%'
"
Enhancements
-
diff-so-fancy: Improvegit diffoutput. -
bat: Highlight support forgitignore. -
emoji-cli: Emoji support forgit log.
Tips
- Hit
qto quit from full screen preview any time. - Commands like
glo,gd,gcfandgcleanaccept path arguments to restrain the items listed in fzf(eg,glo main.go test.go,gclean output/). - Call
giwith arguments to get the wanted.gitignorecontents directly(eg,gi cmake c++).
License
The MIT License (MIT)
Copyright (c) 2018 Wenxuan Zhang


