Gitolith Local Working Copy für Apache DocumentRoot
-
27-10-2019 - |
Frage
Ich habe ein System -Setup mit Git und Gitolith. Alles funktioniert gut, außer ich möchte, dass meine Struktur so ist:
Lokale Umgebung -> Entwicklungsserver -> Produktionsserver
Ich habe ein Repo -Setup auf dem Dev -Server und es wird erfolgreich in die lokale Umgebung geklont. Nun, ich brauche ein lokales Dateisystem, das auf dem Entwicklungsserver funktioniert, aber ich bin mir nicht sicher, wie ich dies mit Gitolite machen soll.
git clone /home/gitolote/repositories/myrepo.git
Funktioniert gut, bis ich versuche zu drücken/zu ziehen. An diesem Punkt bekomme ich Folgendes:
remote: ENV GL_RC not set
remote: BEGIN failed--compilation aborted at hooks/update line 20.
remote: error: hook declined to update refs/heads/master
Irgendwelche Ideen, wie man das mit Gitolith macht?
Lösung
Sie verwenden die Lokales Protokoll Für Ihren Klon, was bedeutet, dass Sie Gitolith vollständig umgehen SSH erzwungenes Befehl).
Sie sollten einen zweiten Klon auf Ihrem Entwicklungsserver mit einer mit Gitolith kompatiblen Adresse wie folgt erstellen:
git clone git@gitoliteserver:myrepo.git
Dieses zweite Repo könnte in den Gitolith -Server pushen/ziehen, während das "lokale Dateisystem -Kopie" auf dem Entwicklungsserver bereitgestellt wird, nach dem Sie suchen.
Andere Tipps
Wenn Sie die verwenden müssen Lokales Protokoll, Sie müssen nur einstellen GL_BYPASS_UPDATE_HOOK
Umgebungsvariable zu 1
:
gorgo@somegitoliteserver:~/testing$ GL_BYPASS_UPDATE_HOOK=1 git push
Counting objects: 3, done.
Delta compression using up to 3 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 234 bytes, done.
Total 2 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (2/2), done.
To file:///home/gitolite/repositories/testing.git/
96be337..ab5ca6d master -> master