Frage an git-submodules, pre-commit-hook, git – Commit-Hooks für Git-Submodule

22

Ich verwende ein Git-Submodul (nennen wir es "SubmoduleRepo"), damit ich mein Modul in einige Projekte einbinden kann.

Ich kann mich von jedem Projekt, das es verwendet, zu SubmoduleRepo verpflichten.

Ich kann SubmoduleRepo problemlos aktualisieren, festschreiben und verschieben.

Ich muss einen Commit-Hook immer ausführen, wenn ich etwas festschreibe, während ich in einem Verzeichnis in einem Projekt arbeite, das das SubmoduleRepo enthält (wenn ich in SubmoduleRepo arbeite, wird der Commit-Hook wie erwartet ausgeführt).

Es gibt keinen .git-Ordner im Verzeichnis des Submoduls (nur eine .git-Datei, die den Pfad zum aktuellen Verzeichnis angibt).

Dies ist eine alte Frage, aber möglicherweise sollten Sie sich selbst oder Jason die richtige Antwort zuweisen. :) Mikael Ohlson

Deine Antwort

2   die antwort
16

können Sie das bekommenhooks Verzeichnis durch Ausführen von:

`git rev-parse --git-path hooks`

Hinweis: Standardmäßig ist es.git/hooks aber wenn Sie in einem Submodul sind, wird es anders sein.

Vor Git 2.10+ möchten Sie etwas wie:

`git rev-parse --git-dir`/hooks

Mehr Infos unter:Finden Sie den Pfad zum Git Hooks-Verzeichnis auf der Shell

20

Ich habe ein paar Momente nach dem Posten dieser Lösung gefunden ...

Sie können Hooks in .git / modules // hooks / einfügen - zB. .git / modules / web / js / modules / rate, wenn sich Ihr Submodul im Verzeichnis / web / js / modules / rate befindet.

Dies ist skriptfähig mitgit rev-parse --git-dir. Sehen:stackoverflow.com/questions/14073053/… Jason Axelson
Dies ist leider nicht skriptfähig. cweiske

Verwandte Fragen