Tenemos la convención de que cada mensaje de confirmación comienza con un número de problema.
Me gustaría poder insertar mediante programación la parte del número de problema (calculada por una función separada) en la ventana de confirmación de Magit, cuando se abre por primera vez (es decir, al presionar C C).
¿Cómo lo hago mejor? Donde mirar
ACTUALIZACIÓN: Esto es lo que estoy usando actualmente.
(defun my-extract-branch-tag (branch-name)
(let ((TICKET-PATTERN "\\(?:[[:alpha:]]+-\\)?\\([[:alpha:]]+-[[:digit:]]+\\)-.*"))
(when (string-match-p TICKET-PATTERN branch-name)
(s-upcase (replace-regexp-in-string TICKET-PATTERN "[\\1] " branch-name)))))
(defun my-git-commit-insert-branch ()
(insert (my-extract-branch-tag (magit-get-current-branch))))
(add-hook 'git-commit-setup-hook 'my-git-commit-insert-branch)
Para un nombre de sucursal como <username>-foo-123-<explanatory part>
se produce [FOO-123]
en la primera línea del mensaje de confirmación, para permitir un enlace automático de tickets fácil en Jira.
Respuestas:
Hay una
git-commit-setup-hook
que puede usarse para preparar el búfer de mensajes de confirmación. Aquí viene un breve ejemplo:fuente
Así que contento de que esta respuesta es viejo, pero muy útiles por @wasamasa:
En un modelo de ramificación basado en gitflow, ramas (características) creadas por Bitbucket basadas en problemas de Jira (que siempre tienen el formato UPPERCASEALPHA-DIGITS), lo uso para insertar automáticamente el número de problema actual:
fuente
Para mantener las cosas realmente simples, puede invocar
magit-commit
con argumentos git equivalentes para lograr lo mismo:Agregar ese comando como una acción a la ventana emergente con algo como lo siguiente podría ayudar a optimizar su flujo de trabajo de git:
fuente