auslösen Wir verwenden ein Git-Modul mit mehreren Submodulen. Um es für den täglichen Gebrauch bequemer zu machen, wollte ich einen Post-Commit-Hook haben, der das Submodul automatisch dem Git-Index im Haupt/Super/Root-Git-Repo/Klon/Modul hinzufügt, wie zum Beispiel git add mychangedsubmodulename
Commit bereit, die Commit-Referenz des Submoduls im Haupt-Repo zu aktualisieren und wahrscheinlich weitere Ideen zu erhalten.Kann nicht nach dem Commit git Hook auf Git Submodul
Der .git-Ordner befindet sich im Stammordner des Hauptmoduls und scheint auch das Submodul-ähnliche Material zu enthalten, da das Haupt-Repo mit der Option --recursive
geklont wurde. Meine Version von Git ist git version 2.6.4 (Apple Git-63)
.
Ich könnte leicht eine Post-Commit-Hook in der Hauptrepo erstellen, aber es wird nicht ausgelöst von commits innerhalb eines Submoduls, die ich bisher für richtig und angemessen halte, könnte aber auch ein Hinweis auf eine mögliche Abhilfe sein.
Ich habe versucht, mehrere Post-Commit-Hook-Dateien an verschiedenen Orten auch nach dem question 10848191 ohne Erfolg zu definieren.
Wie kann ich erreichen, dass das Hauptmodul bei Commits in einem Submodul automatisch geändert wird?
Update: Nachdem der Post-Commit-Hook von Submodulen nun manchmal funktioniert, habe ich es geschafft, in das Haupt-Repository zu codieren und git durch Säubern der Umgebungsvariablen erfolgreich aufzurufen.
# clear git environment or git would confuse main and sub repos when crossing boundary by only changing pwd
while read variable; do
unset $variable
done < <(env | grep "^GIT_" | sed 's/=.*//g')
Die ursprüngliche Frage war jedoch, wie der Submodul-Haken ausgelöst wird. Dies scheint nur manchmal zu funktionieren.
Ereignis obwohl es sehr ähnlich aussieht, wenn nicht sogar identisch mit (http://stackoverflow.com/questions/10848191/git-submodule-commit-hooks) Ich habe es versucht und es funktioniert. Cool, danke! –
@PhilippKunz Großartig, du hast es bereits gelöst, ich habe nur die Befehle hinzugefügt, die für mich arbeiten, was wahrscheinlich einige Stunden für jemanden einsparen könnte, da ich einige Zeit vergeudet habe, als mir 'cd' und' git -C' nicht geholfen haben. :-) – dopeddude
wenn es funktioniert nur manchmal. Ich habe es wieder erlebt, nur um den Haken im Submodul nicht zu feuern, habe aber keine Ahnung warum. Danke, dass du mich ermutigt hast, es erneut zu versuchen, was dann der erste erfolgreiche Versuch war. –