6 votes

git cherry-pick -x : lien dans les détails plutôt que dans le résumé

Étant donné un commit avec le message "foo", c'est-à-dire avec seulement une partie résumé, je fais git cherry-pick -x the_commit . Le résultat est un nouveau commit avec le message

foo  
(cherry picked from commit eb42a6475d2c2e4fff7a1b626ce6e27eec21e886)Maintenant, ce n'est pas bon, parce que c'est un résumé de deux lignes, ce qui semble être un bug dans git.

Mais comment puis-je faire en sorte que git rende le commentaire comme ci-dessous sans l'éditer manuellement ?

foo  

(cherry picked from commit eb42a6475d2c2e4fff7a1b626ce6e27eec21e886)

7voto

Jefromi Points 127932

Vous avez raison de dire que ça semble être un oubli. Vous pourriez envoyer un email à la liste de diffusion git et voir ce qu'ils en pensent ! Mais pour l'instant, vous devez vous débrouiller tout seul.

La bonne façon de gérer ce problème serait de l'éviter complètement : faire en sorte que le message de validation original soit bon. S'il est déjà multi-lignes, avec une ligne vierge, la ligne ajoutée par le cherry-pick n'altérera pas le format.

Pour contourner ce problème, étant donné que le commit sélectionné a un message d'une ligne, comme vous le dites, vous pouvez utiliser la commande -e option pour le cherry-pick. Si vous utilisez Vim, dans le pire des cas vous devez taper ggo<Esc>ZZ pour s'en occuper.

Ou vous pouvez écrire un hook prepare-commit-msg. Tout ce dont vous avez besoin est :

#!/bin/bash
sed -i '2s/^(cherry picked/\n&' "$1"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X