El control de versiones es algo que siempre me ha llamado poderosamente la atención. Y mas que para aplicarlo únicamente al desarrollo de software, para aplicarlo a cualquier cosa que se te pueda pasar por la cabeza. Y es que las posibilidades que nos ofrece para llevar una gestión adecuada de cualquier tarea que llevemos adelante, son espectaculares. Sin embargo, tanto para un usuario novel, como para uno avezado en las lides del control de versiones, siempre llega un momento en el que necesita situarse, saber donde se encuentra. Para estas situaciones hay diferentes soluciones, y una de ellas es GRV, Git Repository Viewer.

GRV. Git Repository Viewer

Dependiendo del entorno de desarrollo que estés utilizando, es posible este disponga de un gestor visual de Git. O por lo menos, que tenga forma de mostrarte, de forma gráfica, la evolución de tu repositorio con el paso del tiempo.

Esto, no solo, te permite situarte donde te encuentras, sino que además te permite gestionar de una forma mas intuitiva las diferentes acciones que puedes realizar.

¿Porque utilizar un visor de Git en el terminal?

Es posible que te preguntes, que razón puedes tener para utilizar un visor de Git en el terminal. Sencillamente dependerá de tu flujo de trabajo, ni mas ni menos. Si, como comentaba en la introducción, tu entorno de desarrollo, ya lo lleva integrado, es posible que no te haga falta. Sin embargo, una solución como GRV siempre aporta herramientas adicionales o un punto de vista diferente.

Si por el contrario, para trabajar con Git, recurres al terminal, desde luego, que una herramienta, como GRV, te será de gran utilidad, aunque sea de forma puntual.

Características de GRV

GRV tiene algunas características que hacen que esta herramienta tenga un gran potencial, sobre todo aquellos acostumbrados a trabajar en el terminal, y mas si lo hacen utililizando VIM.

Se pueden filtrar commits y referencias utilizando un lenguaje propio de consultas.

Los cambios que se producen en el repositorio se refrescan en tiempo real en GRV. Esto lo consigue monitorizando el sistema de archivos.

GRV está organizado en pestañas, permitiéndote crear nuevas utilizando la combinación de las existentes.

Tiene un sistema de atajos de teclado similar a VI . Pero además, los atajos de teclado son configurables y personalizables, como no podía ser de otra manera.

. Pero además, los atajos de teclado son configurables y personalizables, como no podía ser de otra manera. Puedes definir tus propios temas.

Tiene soporte para ratón.

Tiene un gráfico de commits.

Atajos de teclado

A continuación puedes encontrar algunos de los atajos de teclado mas interesantes, que por supuesto puedes definir según tus propias necesidades.

Atajo Acción Descripción z.,zz grv-center-view Centra la vista L grv-cursor-bottom-view Se mueve a la última línea de la página M grv-cursor-middle-view Se mueve al medio de la página H grv-cursor-top-view Se mueve a la primera línea de la página gg grv-first-line Se mueve a la primera línea G grv-last-line Se mueve a la última línea C-d grv-next-half-page Se mueve media página abajo Down,j grv-next-line Se mueve una línea abajo PageDown,C-f grv-next-page Se mueve una página abajo C-u grv-prev-half-page Se mueve media página arriba Up,k grv-prev-line Se mueve una línea arriba PageUp,C-b grv-prev-page Se mueve una página arriba zb grv-scroll-cursor-bottom Desplaza la pantalla hacia abajo zt grv-scroll-cursor-top Desplaza la pantalla hacia arriba Left, h grv-scroll-left Desplazamiento a la izquierda Right,l grv-scroll-right Desplazamiento a la derecha / grv-search-prompt Búsqueda desde el principio ? grv-reverse-search-prompt Búsqueda desde el final n grv-search-find-next Se desplaza al siguiente encontrado N grv-search-find-prev Se desplaza al anterior encontrado

Estos son unos pocos de los atajos de teclado que te permite GRV. Te recomiendo que le des un vistazo al listado de atajos de teclado porque es sinceramente brutal.

Ciertamente aprenderte todos estos atajos de teclado tiene su aquel, pero es que la productividad que te ofrece, es muy interesante.

Configuración

Una de los aspectos reseñados de la aplicación es, precisamente, el gráfico de commits. Sin embargo, este no se muestra por defecto. Para mostrarlo tienes que ejecutar set commit-graph true . Esta es una de las variables que GRV te permite configurar. Existen muchas otras, entre ellas te destaco las siguientes,

Variable Tipo Valor por defecto Descripción commit-graph booleana false Gráfico visible mouse booleana false Soporte del ratón tabwidth entero 8 Ancho del tabulador theme cadena solarized Tema activo

Además de poder configurar los valore a través de comando, también lo puedes hacer mediante un fichero de configuración, ~/.config/grv/grvrc . En mi caso, tengo las siguientes opciones definidas,

set commit-graph true set tabwidth 4 set mouse true

Instalación

Actualmente, GRV, no está disponible en los repositorios oficiales de Ubuntu, pero lo puedes instalar fácilmente desde GitHub.

Otra opción, es ejecutar las siguientes órdenes, pero ten en cuenta, que la versión puede haber cambiado,

wget -O grv https://github.com/rgburke/grv/releases/download/v0.3.0/grv_v0.3.0_linux64 chmod +x .grv sudo mv grv /usr/bin

En el caso de que utilices bash-it o oh-my-zsh ten en cuenta que existe un alias para git que es precisamente grv , con lo que tendrás que deshabilitar este alias.

Conclusiones

Como te he comentado a lo largo del artículo, se trata de una aplicación realmente útil, y que seguro te puede aportar una mejor visión de Git, con independencia de tu nivel de usuario. Mi recomendación, como de costumbre en estos casos, es que pruebes GRV, porque siempre te puede aportar algo nuevo.

En el caso de que seas un usuario novel, tres cuartos de lo mismo, prueba GRV. Soy consciente de que es posible que el terminal te tire para atrás. Sin embargo, tarde o temprano, te darás cuenta de que el terminal es tu amigo con la productividad, con lo que cuanto antes empieces a utilizarlo antes empezarás a ser altamente productivo.

Más información,