Installation β’ Usage β’ Customisation β’ Feedback
gh-f
is the ultimate, compact and snappy fzf
extension for gh
cli. It addresses most of your daily GitHub workflow, if not all of it: f
stands for filter, fzf or fomething felse.
gh extension install gennaro-tedesco/gh-f
- fzf
- gnu core utils
- bat (optional, if not detected it uses
less
as a pager, instead)
Get started!
gh f
shows the help page. Or watch it in action:
or a quick replay
gh f [cmd]
takes one of the following arguments or flags
command | description | binds |
---|---|---|
-a,adds | add files to staging area | enter: add files to staging area ctrl-d: diff selected file |
-r,runs | show github workflow runs and filter logs | enter: search run logs |
-g,greps | grep in files in revision history | interactive prompt: insert regex, select files, show pattern in revision history |
-p,prs | view, diff and checkout PR | enter: checkout selected PR ctrl-d: diff selected PR ctrl-v: view selected PR |
-b,branches | checkout and diff branches | enter: checkout selected branch ctrl-d: diff selected branch ctrl-x: delete selected branch |
-l,logs | select commits and show diff | enter: show selected commit diff |
-t,tags | checkout and diff version tags | enter: checkout tag in detached HEAD ctrl-d diff against current branch |
-s,search | search issues in any repository | interactive prompt: follow instructions |
-m,myissue | search issues you opened somewhere | interactive prompt: follow instructions |
-k,pick | cherrypick files between branches | enter: checkout cherrypicked files from branch |
-h,help | show help page | |
-V,version | print the current version |
Most commands follow the semantics of git
standard instructions (so that you can remember them easily), only we append an s
to avoid conflicts, should you have those commands lying around in the shell as aliases or for scripting.
If you want to skip typing gh f
before each command you may alias it directly, for instance
gh alias set prs 'f -p' # show PRs
gh alias set l 'f -l' # show git logs
and likewise for the rest.
The prompt colours are defined via their ANSI sequences here: change yourself accordingly, if you like different ones.
If you find this application useful consider awarding it a β, it is a great way to give feedback! Otherwise, any additional suggestions or merge request is warmly welcome!
See also the complete family of extensions