Redescubriendo los clientes Git con GitKraken

Hablando de git, recientemente estuve echando un vistazo a un cliente que viene pisando fuerte: GitKraken.

Hacía tiempo que no utilizaba ningún cliente GUI para git, en concreto desde que hace años dejé de lado el cliente oficial de GitHub en Windows al sustituir todos mis sistemas por Linux. La terminal me es más que suficiente para el uso que le doy a git, aunque herramientas como GitKraken pueden resultar útiles para diversas tareas y organización del trabajo en nuestros repositorios.

En Linux podremos utilizarlo de dos maneras. Si estamos en Debian o derivada como Ubuntu podremos instalar el paquete .deb correspondiente o bien descargarnos el comprimido gzip para su uso en modo standalone sin necesidad de instalar nada más. Por otro lado, también está disponible para MacOS y Windows. Tenéis todas las opciones de uso según vuestra plataforma en su web.

Especial reseña a su fácil integración con servicios de BitBucket y GitHub (también en su versión Enterprise). De esta manera, los que ya tengáis cuenta en esos servicios os resultará realmente sencillo comenzar a trabajar en vuestros repositorios con GitKraken. A modo de ejemplo, nada más iniciar el cliente podremos hacer login con nuestra cuenta de GitHub:

La autenticación se lleva a cabo por medio del protocolo OAuth y tendremos que dar los permisos correspondientes -tal y como hice en su momento con el cliente oficial de GitHub- sobre nuestra cuenta:

Para trabajar con nuestros repositorios remotos podremos hacerlo tanto por HTTPS como por SSH. Para hacerlo de esta última manera, en el mismo cliente GitKraken podremos generar el par de claves privada/pública para la configuración en nuestra cuenta de GitHub o BitBucket.

La interfaz es intuitiva y al poder observar el árbol del repo resulta muy fácil y claro realizar operaciones de commit/revert commit, push, creación de ramas (branches), merges, etc… Cuestiones que aunque controlemos conceptualmente y desde la terminal, muchas veces echamos en falta tener representadas visualmente.