Ich arbeite mit der neuesten Version von PyCharm. In unserem Repo haben wir einige Hooks, wie „prepare-commit-msg“, um eine Commit-Vorlage zu erstellen, oder „commit-msg“, das von Gerrit verwendet wird, um die von diesem Team-Code-Kollaborationstool verwendete Änderungs-ID hinzuzufügen.
Sie funktionieren alle einwandfrei im Terminal, werden aber anscheinend nicht von PyCharm ausgeführt.
Liegt es an einer fehlerhaften PyCharm-Konfiguration oder funktionieren Git-Hooks in der IDE nicht?
Antwort1
Ich bin auch darauf gestoßen (mit PyCharm 2019.1 Professional Edition). Ich habe die Leute bei JetBrains gefragt und sie haben mich auf das entsprechende Ticket verwiesen:
https://youtrack.jetbrains.com/issue/IDEA-114680
Leider ist es ein altes Problem mit wenigen Upvotes (ich habe gerade erst eines hinzugefügt). Der Kern des Problems wird im ersten Kommentar von Kirill erwähnt:
Das Problem besteht darin, dass der Commit-Dialog angezeigt wird, bevor „Git Commit“ aufgerufen wird und somit bevor irgendwelche Pre-Commit-Hooks aufgerufen werden.
Beachten Sie jedoch, dass der HakenIstwird hingerichtet...irgendwann.
In meinem Fall habe ich das zufällig herausgefunden, als ich endlich aufgegeben hatte. Ich machte weiter, wie immer. Ich habe meine Ticketnummer der Commit-Nachricht vorangestellt, committet, die Änderung gepusht und dann bemerkt, dass die Ticketnummer zweimal auftauchte (z. B.„[ABC-123] ABC-123 fügt Funktion x hinzu“).