Frage

Ich beginne mit einem neuen CI -Projekt basierend auf dem CI 2.0 Reaktor -Repository. Da sich der CI2 -Code noch ändert, möchte ich diesen Code frisch halten, die Frage ist, wie (mit Git).

Für die Nicht-CI-Leute sieht die Grundstruktur eines CI2-Projekts so aus:

system/  
application/  
index.php
...

Das Systemverzeichnis enthält das Framework, Index.php, das Bootstrapping und die Anwendung enthält mein Projekt. Idealerweise möchte ich sowohl index.php als auch den Systemordner mit Git auf dem neuesten Stand halten. Eine andere Sache, an die ich mich einhalten möchte, ist der Name des Anwendungsordners. (Sie können den Pfad Ihres Anwendungsordners in index.php ändern.) Wenn Sie den Namen gleich halten, können Sie einfach in den Ordner fallen und gehen Sie aus.

Ich habe versucht, dies durch Verwendung zu verwirklichen Git -Submodule (Siehe unten), aber Submodules lassen Sie nicht ein Verzeichnis aus dem Zielrepository angeben.

git submodule add https://github.com/philsturgeon/codeigniter-reactor.git/code-igniter/system system

Irgendwelche Hinweis, wie ich das erreichen kann?

War es hilfreich?

Lösung

Leider können Sie einen bestimmten Ordner in einem Submodul nicht verweisen, nur auf die Wurzel des Submoduls selbst. Das würde bedeuten, dass Sie Ihre Bewerbung in einen Unterordner stellen müssen, der Mist wäre.

Sie können jedoch nur zwei Fernbedienungen in Ihrer Git -Anwendung einrichten.

Git init
Git Remote hinzufügen Ursprung Git: // was auch immer
Git Remote add reaktor git@github.com: Philsturgeon/Codesigniter-reactor.git

Aktualisieren Sie dann mit Reaktoränderungen

Git Pull Reactor Master
Git Push Origin Master

Denken Sie daran, dass dieser Klon wirklich dazu beigetragen hat, Menschen zu helfen, ihren Codesigniter -Reaktor -Änderungen int zu bekommen, ohne Merkurial zu lernen, aber Sie können ihn gerne verwenden, solange er existiert.

Andere Tipps

Ich bin auch in das gleiche Problem gestolpert.

Ich möchte wirklich Git verwenden, um den Codesigniter -Kern jedes Mal ohne Kopieren und Einfügen die Updates einzufügen! Es gibt viele Vorteile, Git -Submodules zu verwenden (und die Git das verwenden).

Also habe ich es auf diese Weise gemacht:

mkdir yourapp
cd yourapp
git init
git sudmodule add git://github.com/EllisLab/CodeIgniter.git codeigniter
mkdir public
cp codeigniter/index.php public/
cp -rp codeigniter/application .

Bearbeiten Sie nun public/index.php und ändere:

$system_path = 'system';

zu:

$system_path = '../codeigniter/system';

und:

$application_folder = 'application';

zu:

$application_folder = '../application';

Zeigen Sie jetzt Ihren Webserver auf Ihren "öffentlichen" Ordner und es ist fertig! Jetzt haben Sie ein Projekt mit Codesigniter als Submodule :)

Für solche Dinge aktualisiere ich sie manuell und überprüfe nach Konflikten.

Keine wirkliche Antwort auf Ihre Frage, aber im Allgemeinen ist es keine gute Idee, sich zu vertrauen, um sich ändernde Projekte von Dritten zu verändern: Ein Update kann Ihre Bewerbung ohne Vorwarnung brechen. Ich würde empfehlen, es ab und zu manuell zu aktualisieren und Ihre Anwendung nach dem Update zu testen. Auf diese Weise treten plötzliche Pausen Ihrer Bewerbung weniger wahrscheinlich auf.

Ich bin nie auf ein Projekt oder ein Framework gestoßen, in dem Sie den Framework -Kern in Ihrem Github -Repo speichern oder direkt durch ein anderes Repo ziehen. Sie sollten sich auf einen Komponisten für solche Dinge verlassen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top