https://github.com/ytakahashi/igit
Interactive git commands using fzf, available as zsh plugin
https://github.com/ytakahashi/igit
fzf git zsh zsh-plugin
Last synced: 7 months ago
JSON representation
Interactive git commands using fzf, available as zsh plugin
- Host: GitHub
- URL: https://github.com/ytakahashi/igit
- Owner: ytakahashi
- License: mit
- Created: 2018-04-30T02:14:37.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2024-03-17T22:17:09.000Z (over 1 year ago)
- Last Synced: 2025-02-25T18:40:54.908Z (9 months ago)
- Topics: fzf, git, zsh, zsh-plugin
- Language: Shell
- Homepage:
- Size: 43.9 KB
- Stars: 16
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-zsh-plugins - igit - Interactive `git` commands using [fzf](https://github.com/junegunn/fzf). (Plugins / ZSH on Windows)
- fucking-awesome-zsh-plugins - igit - Interactive `git` commands using <b><code> 75058⭐</code></b> <b><code> 2613🍴</code></b> [fzf](https://github.com/junegunn/fzf)). (Plugins / ZSH on Windows)
- awesome-zsh-plugins - igit - Interactive `git` commands using [fzf](https://github.com/junegunn/fzf). (Plugins / Zinit (née zplugin))
README
# igit
`igit` - interactive git command using fzf

## Requirements
- zsh
- [fzf](https://github.com/junegunn/fzf)
## Install
### With [zinit](https://github.com/zdharma-continuum/zinit)
```zsh
zinit light ytakahashi/igit
# or
# zinit load ytakahashi/igit
```
### With [zplug](https://github.com/zplug/zplug) :hibiscus:
```zsh
zplug "ytakahashi/igit"
```
### Manually
Clone this repository and load `igit.plugin.zsh` from `.zshrc`
```.zshrc
source /path/to/igit.plugin.zsh
```
## Usage
```shell
igit [command]
```
command: `add`, `branch`, `cherry-pick`, `delete`, `diff`, `log`, `merge`, `stash`, `switch`, `tag`, `revert`
### Basic usage
Basic operation on fzf window.
| Key | Description |
| :---------------------------------------------------------- | :--------------------- |
| Ctrl+j/n | Move cursor down |
| Ctrl+k/p | Move cursor up |
| Ctrl+c/g or Esc | Exit |
`igit` specific operation on fzf window.
| Key | Description |
| :---------------------------- | :------------------------------------------------------------------------------ |
| Ctrl+s | See selected file/branch/commit |
| Alt+ `key` | Put git command using selected file/branch/commit onto the editing buffer stack |
### igit help
Show available commands.
### igit add
Show current status and add selected files.
| Key | Description |
| :---------------------------------------------- | :--------------------- |
| Ctrl+i or Tab | Mark/Unmark files |
| Alt+a | Add selected files |
### igit branch
Show local and remote branchs.
| Key | Description |
| :----------------------------------------- | :---------------------------------------- |
| Alt+d | Delete selected branch |
| Alt+s | Switch to selected branch |
| Alt+m | Merge selected branch into current branch |
### igit cherry-pick
Show commit log and cherry-pick selected commit.
| Key | Description |
| :----------------------------------------- | :--------------------- |
| Enter | Cherry-pick the commit |
### igit delete
Show branches and delete selected branch(es).
| Key | Description |
| :----------------------------------------- | :-------------------- |
| Enter | Delete the branch(es) |
### igit diff
Shows current status and see diff of selected file.
### igit log
Show log of branch.
| Key | Description |
| :----------------------------------------- | :--------------------------- |
| Alt+h | Reset (hard) to the commit |
| Alt+m | Reset (mixed) to the commit |
| Alt+s | Reset (soft) to the commit |
### igit stash
Show stashes.
| Key | Description |
| :----------------------------------------- | :--------------------------- |
| Alt+a | Apply selected stash |
| Alt+d | Drop selected stash |
### igit tag
Show tags.
| Key | Description |
| :----------------------------------------- | :--------------------------- |
| Ctrl+s | Show selected tag |
| Alt+c | Show diff between the tags |
| Alt+p | Push the tag to origin |
| Alt+s | Switch to selected tag |
## Key Bingings
Following key bindings are available.
| Key | Command |
| :---------------------------------------------------------- | :--------------------- |
| Ctrl+g Ctrl+a | igit add |
| Ctrl+g Ctrl+b | igit branch |
| Ctrl+g Ctrl+l | igit log |
| Ctrl+g Ctrl+m | igit merge |
| Ctrl+g Ctrl+s | igit switch |