Was ist der empfohlene Weg für mich, Git in meinem Lithium -Projekt zu verwenden?
Frage
Nachdem ich viele PHP -Frameworks durchsucht hatte, um herauszufinden, welche ich lernen und benutzen soll, habe ich mich vorläufig auf Lithium entschieden. Das sieht großartig aus. Außer, ich bin mir nicht ganz sicher, wie ich die Lithium -Apps, die ich in Git schreibe, am besten verwaltet werden, da ich den Code empfohlen habe. Das Handbuch schlägt vor:
git clone git://github.com/UnionOfRAD/framework.git my_app
cd my_app
git submodule init
git submodule update
Dies führt zu einem nicht leeren Hauptrepository (2000+ Commits in der Geschichte derzeit). Sollte ich einfach meine eigenen Änderungen in demselben Repository (in meinen eigenen Zweigen?) Bedenken und wenn es Änderungen gibt, oder gibt es eine andere Möglichkeit, die empfohlen wird?
Ich weiß, dass ich auch die Dateien einfach herunterladen kann, ohne das Repository zu klonen, aber da das Handbuch angibt, dass dies empfohlen wird, muss ich mir vorgestellt, dass es einen guten Grund und eine ideale Möglichkeit gibt, dies zu tun. (Ich nehme an, es erleichtert es einfacher, das Framework zu aktualisieren, wenn eine neue Version herauskommt.)
Lösung
Es hängt von Ihrem bevorzugten Setup ab. Wenn ich schnell ins Rollen kommen möchte, funktioniert eine Kasse der Beispiel -App hervorragend. Es verfügt über eine BootStap -Konfiguration, Beispiel -Controller und einige Ansichten. Sobald Sie jedoch überschritten haben, dass ich vorschlage, Ihr eigenes Basis-App-Repo zu erstellen und den Framework selbst PR-Server und nicht die PR-App bereitzustellen. Das app/config/bootstrap/bibliotheken.php kann leicht geändert werden, um Lithium von anderswo zu laden.
So
- Lithium PR -Server einsetzen (/Home/Lithium ist meine Präferenz)
- Erstellen Sie Ihre eigene Basis -App, indem Sie das Standard -LI3 -Einsatz kopieren und sie entfernen/ändern
- Erstellen Sie eine flexible Vhost -Konfiguration, damit Sie gerade können Git-Klon-Basis-App ~/Sites/Foo-App, oder ähnlich, um schnell mit einer neuen App zu rollen.
Ich habe meine (inzwischen) (inzwischen) Basis-App auf Github
Andere Tipps
Ja. In Git erhalten Sie eine Kopie aller Geschichte. Sie können Ihre Arbeit in Ihrer eigenen Niederlassung verfolgen und synchronisieren, wie Sie es mit Pull oder Fetch sehen.
Da Sie GitHub verwenden, geben Sie diesen Repo und Klon aus der Gabel. Wenn Sie einen Beitrag leisten möchten, können Sie Pull -Anfragen erstellen.
BEARBEITEN:
Zunächst müssen Sie nur klonen: Klon:
git clone <url to the repo>
git submodule --init --recursive
Wenn Sie nicht dazu beitragen, ist der Workflow von damals einfach:
git fetch
um das neueste von github zu holen
git merge --ff-only origin/master
git submodule update --recursive
Wenn Sie Fehler erhalten, weil Sie eine Datei versehentlich geändert haben, können Sie
git reset --hard HEAD
git clean -xdf
Und beginnen Sie erneut mit dem Zusammenführungsschritt. Möglicherweise müssen Sie in die Submodul -Verzeichnisse gehen und die oben genannten 2 Schritte dort ausführen, wenn die Änderungen dort stattgefunden haben.
Hoffe das hilft.