612 - Commits y ChatGPT

612 - Commits y ChatGPT

Crear los mensajes de los commits utilizando la API de #ChatGPT a partir de la información de los propios cambios con una sola línea de comando o un alias

1:25
-3:15

Como he comentado en alguna que otra ocasión, hasta el momento, estoy utilizando los modelos de lenguaje para resumir, extraer, modificar texto existente mas que como herramientas generativas. Y es que en cualquier caso, para cualquier generación que haya intentado hacer, ya sea texto o código, los resultados que he obtenido dejan bastante que desear. Probablemente, no le haya dedicado el tiempo que necesitan, pero, a ver si va salir mas caro el collar que el perro. Sea como fuere, lo cierto es que es necesario seguir experimentando con los modelos de lenguaje, e ir aplicándolo a todos los campos posibles. Así en este episodio te voy a hablar de Commits y ChatGPT.

Commits y ChatGPT

Un pensamiento. Sobre la resistencia

Cualquier cambio que se produce en nuestras vidas, viene acompañada por una resistencia por nuestra parte, directamente proporcional a la magnitud del cambio. Nos gusta mantenernos en nuestra zona de confort donde nos encontramos muy cómodos.

Para resistirnos utilizamos todo tipo de excusas. Desde las mas simples, como eso yo no lo entiendo, o yo soy muy joven, o muy mayor, a esto acabará con la raza humana tal y como la conocemos. Y por supuesto, esto es malo, porque… va a acabar con el trabajo, o cualquier otra excusa que se te pueda ocurrir.

Pero lo cierto, es que los modelos de lenguaje han venido para quedarse, y para hacernos la vida mas sencilla. Y ¿como nos puede hacer la vida mas sencilla? Simplemente haciendo aquellas cosas que a ti no te gusta hacer. Empezando por el resumen de un texto hasta llegar al mensaje de un commit.

Pero, sin lugar a dudas, resistirnos o incluso ignorar el cambio, lo único que llevará es a que lleguemos tarde. Seamos los últimos en aprender y aprovecharnos de esta tecnología… Así, que aplícate.

Espanso

Una de las herramientas que puede mejorar sensiblemente tu productividad a la hora de escribir, sea lo que sea que escribas es, sin lugar a dudas, Espanso. Sobre Espanso, ya te he hablado en otros episodios, como pueden ser el 254 titulado Escribir mas con menos, el 510, que titulé Espanso con ChatGPT una combinación ganadora o el 517 titulado Traduciendo desde la terminal y con Espanso.

En mi caso, dado que casi vivo en la terminal, todo lo que sea ahorrar pulsaciones de tecla viene fantástico.

En este sentido, y con el fin de ahorrar pulsaciones, se puede abordar por dos caminos. O bien, utilizando alias o scripts, o bien utilizando Espanso. Desde luego, cada uno tiene sus ventajas e inconvenientes, pero, para mi, la gran ventaja que tiene Espanso es que lo puedes utilizar en cualquier máquina, mientras que los alias los tienes que definir en cada una de ellas.

Por otro lado, Espanso, los puedes utilizar con cualquier aplicación, no solo en la terminal. Y para estos casos, tiene la ventaja de que permite el uso de cuadros de diálogo o formularios para personalizar la respuesta. Por ejemplo, si quieres que a partir de un título te indique una serie de palabras clave, te mostrará ese cuadro de diálogo donde te preguntará por el título. O por ejemplo que te diga sinónimos de una palabra.

Dime

Claro que de por si, Espanso, simplemente se encarga de realizar reemplazos. Es necesario, dotarlo de un motor, que nos permite realizar operaciones y no solo reemplazar.

Para esto hace algún tiempo implementé una herramienta que te permite trabajar con ChatGPT directamente desde la terminal. Se trata de un sencillo comando que hace las cosas mas

Alias

function gcom -d "git commit with chatgpt"
    git commit -am "$(dime -i "Eres un fantástico desarrollador, especializado en gestionar proyectos con control de versiones" -q "genera un mensaje conciso para un `git commit` que resuma los cambios producidos en ```$(git diff)```. Solo me tienes que dar el mensaje, ni la descripción, ni una explicación. Únicamente un mensaje en español, que comience con un gitmoji y sin comillas")"
end

Más información,

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *