GRV: A tool to view Git repositories from the terminal

grv

When working on a Git repository, it may happen that we want to see the status of the repository. Various solutions are available to us from using some git commands to using a git desktop client.

However This time we will talk about GRV which is an open source command line tool based on Go that shows information from a Git repository.

GRV provides the user with a way to view and search for references, commits, forks and differences by using key bindings similar to Vi / Vim . Its behavior and style can be easily customized through a configuration file.

In addition, there are several themes and they can be modified, as well as the colors.

GRV Features:

  • Provides a query language for filtering refs and commits.
  • Supports Vi / Vim-like key bindings by default, and key bindings can be customized.
  • Capture repository changes by monitoring the file system allowing the user interface to update automatically.
  • It is organized as tabs and divisions; allows you to create custom tabs and splits using any combination of views.
  • Supports customizable themes.
  • Offers mouse support.

Requirements:

  • Go version 1.5 or later must be installed on your system.
  • libncursesw, libreadline, and libcurl.
  • cmake (to build libgit2).

How to install GRV on Linux?

If you want to know a little more about this tool or simply want to install it on your system, you can do so by following the steps that we share below.

To perform the GRV installation, first install the necessary dependencies using one of the following commands according to your Linux distribution.

If they are users of Debian, Ubuntu, Linux Mint and derivatives of these, we must type the following in a terminal:

sudo apt install libncurses5-dev libncursesw5-dev libreadline-dev cmake

For those who are RHEL / CentOS users, they must type:

sudo yum install ncurses-devel readline-devel cmake  

In the case of Fedora users

sudo dnf install ncurses-devel readline-devel cmake

Then install GRV, the following commands will install GRV in $ GOPATH / bin and a static libgit2 will be built and included in GRV when built this way.

go get -d github.com/rgburke/grv/cmd/grv

cd $GOPATH/src/github.com/rgburke/grv

make install

For the special case of those who are users of Arch Linux, Manjaro, Antergos or any system derived from Arch Linux.

They will be able to do a direct installation. They simply must have the AUR repository activated and have an AUR wizard on their system.

If you do not have one installed, you can consult the following article where we recommend some.

Now in a terminal we must type the following command:

yay -S grv-git

And you're done with it, you can start using this tool.

How to install GRV on Linux using Snap package?

For those who prefer to obtain this tool in a simpler way, they can do it with the help of the Snap packages. You only have to have the support to be able to install applications of this type on your system.

Now only in one terminal you should type:

sudo snap install grv

After successful GRV installation, you can view references, commits, and differences from your repository on your system using the syntax below.

GOBIN/grv -repoFilePath /path/to/repository/

In this example, we will see commits, branches, and differences from the repository file in ~ / bin / shellscripts:

GOBIN/grv -repoFilePath ~/bin/shellscripts

The last method we have to install this tool on our system is by downloading its binary package.

For this we must open a terminal in our system and type the following commands in it:

wget -O grv https://github.com/rgburke/grv/releases/download/v0.3.0/grv_v0.3.0_linux64

Done the download now they should give you execution permissions with:

chmod +x ./grv

And they can run the application binary with:

./grv -repoFilePath /path/to/repo

Use

You can find additional usage options by typing the help command in the terminal, the command is this:

GOBIN/grv -h

In the same way, you can consult the following link, where the use of this tool is described a little more.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.