360 - Control de versiones con GitKraken para el reto Python
GitKraken es un potente gestor visual de Git con el que la gestión del control de versiones se convierte en algo realmente sencillo.
Igual que el pasado lunes te hablé sobre el que se convertirá en tu editor de código Python por excelencia, hoy te voy a hablar sobre un gestor de control de versiones centrado en Git, que probablemente, también se convierta en tu gestor de control de versiones. Y es que, llevar el control de versiones con GitKraken es algo realmente cómodo y práctico.
Como ya te comenté el pasado día, puede ser que pienses que esto del control de versiones no va contigo. Simplemente, piensas esto, porque no lo conoces, porque no has visto el potencial y las posibilidades que tiene. En el momento que te des cuenta de esto, lo amarás profundamente.
Control de versiones con GitKraken para el reto Python
Aviso a navegantes
Antes de comenzar a hablarte sobre GitKraken quiero hacerte dos aclaraciones que para mi son muy importantes, y sobre las que no quiero que haya ninguna duda.
- Yo no utilizo GitKraken por regla general. Para mis desarrollos personales hago uso de una herramienta sobre la que hablé en un reciente vídeo LazyGit, y que me resulta mas que suficiente y potente para mi trabajo diario. Eso no quita, para que en alguna ocasión puntual, haga uso de esta herramienta.
- No es Open Source. Se trata de una herramienta que no solo no es Open Source, sino que además no es gratuita para su uso comercial. Actualmente dispone de tres licencias, una libre que es la que estoy utilizando yo, y que se trata de una licencia mono puesto. A parte de esta, existen dos licencias adicionales con diferentes precios y diferentes características como son la Pro y la Enterprise.
Aclarados estos puntos, que me parecen fundamentales, indicar que, si bien, no hago uso de esta herramienta de forma habitual, para aquellos que no están habituados a trabajar con control de versiones, me parece una aplicación realmente espectacular, porque te da una visión y unas posibilidades, que otras herramientas no te ofrecen.
Características
A partir de aquí, me referiré a la versión que utilizo yo, para las otras dos versiones, si necesitas conocer sus características, tendrás que recurrir a la página de los desarrolladores para informarte sobre las mismas.
Historia gráfica
De las características mas interesantes de GitKraken, sin lugar a dudas es la historia gráfica. Esta visión lineal, te permite, de un solo vistazo conocer en que situación te encuentras. Y no solo esto, sino que además te permite conocer en que situación se encuentra el repositorio remoto.
Situándote sobre cada uno de los commits
que has realizado, no solo tienes información de los archivos que se han modificado, sino que puedes ver de forma sencilla, que cambios se han producido en cada uno de esos archivos.
Terminal integrada
Otra de las características interesantes de esta herramienta es que lleva su propia terminal integrada y mejorada. Se trata de una terminal que está completamente integrada con la historia gráfica, de forma que cualquier operación que realices o bien en la historia gráfica o bien en la terminal integrada lo verás reflejado al instante.
Malditos conflictos
Una de las razones para utilizar esta herramienta es precisamente la resolución de conflictos. Un conflicto se produce, por ejemplo, cuando realices un merge y este no se puede resolver de forma automática porque afecta a código modificado en el origen. Puede ser código que hayas modificado tu o un tercero.
GitKraken te ayuda en la resolución de conflictos, y esto es algo realmente cómodo y que te evitará mas de un disgusto. No se trata de machacar lo que hay en origen con tu código, se trata de resolver los conflictos de la mejor forma posible.
Rebases
Una operativa realmente interesante son los rebases. Esto es algo que no es para nada intuitivo y en alguna ocasión puede resultar hasta complejo. Sin embargo, con GitKraken y su rebase interactivo las cosas resultan mucho mas fáciles de lo que pudiera parecer inicialmente.
Pull Requests
Esto de los pull requests no tengo muy claro que lo vayamos a utilizar en el Reto Python, pero es algo realmente interesante. Al final, una de las grandes ventajas del Open Source es poder interactuar y colaborar con otras personas y proyectos. Esto lo puedes hacer de diferentes formas, pero, en el caso particular de GitHub se hace a través de Pull Request. Un Pull Request, no es ni mas ni menos que pedir permiso para que tu código forme parte del código de un proyecto.
Instalación
La instalación es realmente sencilla y dependerá de la distribución que estés utilizando. Así, tienes a tu disposición paquetes deb
, rpm
, tar.gz
y snap
. Además en el caso particular de Manjaro y Arch, lo puedes instalar desde los repositorios AUR, con lo que más fácil no puede ser.
Conclusiones
Llegados a este punto, seguro que te estás planteando si esto de GitKraken es para ti. Y, ya no te digo si comprar una de las licencias de pago, si no siquiera utilizar la versión gratuita.
En particular para el Reto Python te la recomiendo, por dos razones. Por un lado, porque te resultará mas sencillo seguir el reto a través de las diferentes etiquetas con las que marcaré el repositorio para cada uno de los retos. Por otro lado, porque te ayudará a conocer y profundizar en lo que es Git y el control de versiones.
Imagen de portada de Mahdi Bafande en Unsplash