A menudo se descuidan los mensajes de commit en Git. Muchos los ven simplemente como un mal necesario para guardar los cambios. Los mensajes de commit significativos son un factor decisivo para el éxito de un proyecto: garantizan una buena trazabilidad de los cambios, una colaboración eficiente en equipo y una resolución de problemas más rápida. No hay razón para que los mensajes de commit se preparen automáticamente con ayuda de la IA.
Con la ayuda de los llamados. Ganchos es posible ejecutar scripts, por ejemplo, para pruebas automatizadas o comprobación de código para determinados eventos durante el flujo de trabajo Git. El lado del cliente prepare-commit-msg-El gancho es inmediato antes de El siguiente script bash, por ejemplo, debe ejecutarse en la carpeta ~/git-template/hooks/prepare-commit-msg
archivarse:
0d311d3e3743f65bd1f7fa370c3b3848
Por último, añada su Clave API de OpenAI en la línea 4 y, si se desea, modifica el modelo ChatGPT utilizado en la línea 5 (en nuestro ejemplo gpt-4o
A continuación, hacemos ejecutable el script con chmod +x ~/git-template/hooks/prepare-commit-msg
y fijar con git config --global core.hooksPath ~/git-template/hooks
el directorio por defecto para los hooks de Git en la configuración global de Git.
El script genera para el dif de todos los archivos etiquetados crea automáticamente una plantilla adecuada para el mensaje de confirmación: git add -A . && git commit
. También puede enviar un mensaje vacío ("."), que se sobrescribirá automáticamente.: git add -A . && git commit -m "." && git push
– pero cuidado: aquí ya no es posible validar el mensaje.
Los modelos de IA son ahora tan avanzados que se crean mensajes de confirmación automáticos muy razonables basados en los cambios. Ajustando el prompt (a partir de la línea 13) se puede optimizar aún más la devolución. Por cierto, el script también funciona en herramientas Git UI como Torre y SmartGit. Si desea volver a desactivar el comportamiento, sólo tiene que pulsar git config --global --unset core.hooksPath
.