MCPcopy
hub / github.com/rgburke/grv

github.com/rgburke/grv @v0.3.2 sqlite

repository ↗ · DeepWiki ↗ · release v0.3.2 ↗
2,301 symbols 6,614 edges 83 files 903 documented · 39%
README

GRV - Git Repository Viewer Build Status

GRV is a terminal based interface for viewing Git repositories. It allows refs, commits and diffs to be viewed, searched and filtered. The behaviour and style can be customised through configuration. A query language can be used to filter refs and commits, see the Documentation section for more information.

Screenshot

More screenshots can be seen here

Features

  • Commits and refs can be filtered using a query language.
  • Changes to the repository are captured by monitoring the filesystem allowing the UI to be updated automatically.
  • Organised as tabs and splits. Custom tabs and splits can be created using any combination of views.
  • Vi like keybindings by default, key bindings can be customised.
  • Custom themes can be created.
  • Mouse support.
  • Commit Graph.

Documentation

Documentation for GRV is available here

Install

Note: grv is currently an alias used by oh-my-zsh. Add unalias grv to the end of your .zshrc to invoke GRV.

Linux

Static binaries are available for Linux. For example, to use the amd64 binary run the following steps:

wget -O grv https://github.com/rgburke/grv/releases/download/v0.3.1/grv_v0.3.1_linux64
chmod +x ./grv
./grv -repoFilePath /path/to/repo

Mac

GRV is available in homebrew and can be installed with:

brew install grv

FreeBSD

GRV can be installed as a binary package

pkg install grv

or from ports

cd /usr/ports/devel/grv && make install clean

Build instructions

Go version 1.8 or later is required. GRV depends on the following libraries:

  • libncursesw
  • libreadline
  • libcurl
  • cmake (to build libgit2)

Building GRV on OSX requires homebrew, and for readline, pkg-config, and cmake to be installed using homebrew:

brew install readline pkg-config cmake

To install GRV run:

go get -d github.com/rgburke/grv/cmd/grv
cd $GOPATH/src/github.com/rgburke/grv
make install

To install grv with an alternative binary name change the last step to:

make install BINARY=NewBinaryName

where NewBinaryName is the alternative name to use instead.

The steps above will install GRV to $GOPATH/bin. A static libgit2 will be built and included in GRV when built this way. Alternatively if libgit2 version 0.27 is installed on your system GRV can be built normally:

go install ./cmd/grv

Extension points exported contracts — how you extend this code

ConfigCommand (Interface)
ConfigCommand represents a config command [17 implementers]
cmd/grv/config_parse.go
FieldTypeDescriptor (Interface)
FieldTypeDescriptor provides the type of the provided field (if it exists) [10 implementers]
cmd/grv/expression_processor.go
TypeDescriptor (Interface)
TypeDescriptor returns the type of a field or value [10 implementers]
cmd/grv/expression_processor.go
EventListener (Interface)
EventListener is an entity capable of receiving events [14 implementers]
cmd/grv/grv.go
ConfigVariableValidator (Interface)
ConfigVariableValidator validates a new value for a config variable [7 implementers]
cmd/grv/config.go

Core symbols most depended-on inside this repo

NewSystemColor
called by 329
cmd/grv/theme.go
Unlock
called by 200
cmd/grv/abstract_window_view.go
Lock
called by 199
cmd/grv/abstract_window_view.go
NewColorNumber
called by 123
cmd/grv/theme.go
Name
called by 94
cmd/grv/repo_data_loader.go
HandleAction
called by 92
cmd/grv/view.go
UpdateDisplay
called by 72
cmd/grv/grv.go
String
called by 72
cmd/grv/query_parse.go

Shape

Method 1,362
Function 567
Struct 238
Interface 63
TypeAlias 39
FuncType 32

Languages

Go100%

Modules by API surface

cmd/grv/repo_data.go166 symbols
cmd/grv/abstract_window_view_test.go113 symbols
cmd/grv/repo_data_loader.go102 symbols
cmd/grv/view.go84 symbols
cmd/grv/config.go79 symbols
cmd/grv/ref_view.go77 symbols
cmd/grv/window.go75 symbols
cmd/grv/config_parse.go75 symbols
cmd/grv/diff_view.go59 symbols
cmd/grv/query_parse.go55 symbols
cmd/grv/commit_view.go54 symbols
cmd/grv/ui.go52 symbols

For agents

$ claude mcp add grv \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact