-- Leo's gemini proxy
-- Connecting to gmi.osiux.com:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini;lang=es_AR
AUTHOR: Osiris Alejandro Gomez
EMAIL: osiux@osiux.com
DATE: 2021-02-03 23:50
Hace unos días implementé `git-log-org-changelog`[1] para automatizar la generación del *ChangeLog* de cada *post* y hoy comencé a usar *hook* `post-commit` para obtener los nombres de archivos del último *commit* y luego de verificar si se trata de un *post* usando una *expresión regular* se genera el mensaje del *commit* y se realiza el mismo, de esta manera, podría dejar de hacerlo manualmente para cada *post*.
Típico de *developer*, minimizar la tarea y pensar que es una giladita, obvio que el primero commit para estrenar el *hook* entró en el problemita de la recursividad! y generó casi 100 *commits* de *ChangeLog* sobre el *commit* del *ChangeLog*.
La solución fue, agregar una validación inicial donde se verifica que si se esta por realizar un *commit* de *ChangeLog* y el último *commit* tiene como *subject* `ChangeLog: YYYY-MM-DD-filename.gmi` entonces el `post-commit` no hace nada y termina la ejecución.
Solucionada la recursividad, me encontré que el *post* se eliminaba y quedaba únicamente el *ChangeLog*, y esto se solucionó corrigiendo la expresión regular que detecta si un *post* ya tiene una sección `** ChangeLog`.
Luego de reescribir el historial de `git` para corregir todos los errores, documento la solución:
1.
descargar los *scripts* git-log-files[2] y git-log-org-changelog[3] y dejarlos accesibles para su ejecución (en mi caso, directamente todo el repositorio `git-bash-utils`[4])
2.
descargar el *hoook* post-commit-org-changelog[5] y guardarlo en `.git/hooks/post-commit` y darle permiso de ejecución.
Ahora luego de cada *commit* se genera un *commit* de *ChangeLog* automáticamente :)
`2022-11-13 20:39`[6] agregar y actualizar tags OpenGraph
`2021-02-04 11:46`[7] detallo inconvenientes y solución final de `post-commit` *ChangeLog*
`2021-02-03 23:00`[8] agrego git `post-commit` *ChangeLog*
-- Response ended
-- Page fetched on Fri May 17 03:17:03 2024