Domanda

sto iniziando di con un nuovo progetto basato sul CI CI 2.0 Reactor repository . Poiché il codice CI2 è ancora cambiando, vorrei mantenere quel codice fresca, la questione è come (usando Git).

Per la gente non-CI, la struttura di base di un aspetto del progetto CI2 in questo modo:

system/  
application/  
index.php
...

La directory di sistema contiene il quadro, fa index.php il bootstrap e l'applicazione contiene il mio progetto. Idealmente, vorrei mantenere sia index.php e la cartella di sistema up-to-date con Git. Un'altra cosa che vorrei aderire è il nome della cartella dell'applicazione. (È possibile modificare il percorso della cartella dell'applicazione in index.php.) Mantenere il nome delle stesse permette di cadere solo nella cartella, e il gioco è fatto.

Ho provato a realizzare questo utilizzando git sottomoduli (vedi sotto), ma sottomoduli non consentono di specificare una directory dal repository di destinazione.

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

Qualsiasi idea di come posso raggiungere questo obiettivo?

È stato utile?

Soluzione

Purtroppo non è possibile fare riferimento a una cartella specifica in una sotto-moduli, solo la radice del sotto-modulo stesso. Ciò significherebbe è necessario mettere l'applicazione in una sottocartella, che sarebbe merda.

È possibile tuttavia solo impostare due telecomandi sulla vostra applicazione Git.

git init
git add remota origine git: // qualunque
git remote inserirlo reattore git@github.com: philsturgeon / codeigniter-reactor.git

Poi aggiornamento con modifiche reattore

reattore di pull git maestro
git maestro origine spinta

Ricordate che questo clone è stato pensato per aiutare le persone a loro Reactor CodeIgniter cambia int senza bisogno di imparare Mercurial, ma siete invitati a utilizzare il più a lungo come esiste.

Altri suggerimenti

mi sono imbattuto nello stesso problema troppo.

Ho molta voglia utilizzare git per portare il nucleo CodeIgniter con l'applicazione senza copiare e incollare gli aggiornamenti ogni volta! Ci sono un sacco di vantaggi di usare sottomoduli git (e che fanno uso di git sanno già che).

Così ho fatto in questo modo:

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 .

Ora Modifica pubblica / index.php e il cambiamento:

$system_path = 'system';

a:

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

e

$application_folder = 'application';

a:

$application_folder = '../application';

Ora puntare il server web per la vostra cartella "pubblica" e il gioco è fatto! Ora avete un progetto con CodeIgniter come modulo:)

Per cose del genere, io aggiornare manualmente e verificare la presenza di conflitti.

Non è un vero risposta alla tua domanda, ma in generale non è una buona idea per la fiducia che cambia i progetti di terze parti: un aggiornamento può rompere la vostra applicazione senza preavviso. Vorrei consigliare di aggiornare manualmente ogni ora e poi e testare l'applicazione dopo l'aggiornamento. In questo modo le pause improvvise della vostra applicazione sono meno probabile che accada.

Non ho mai eseguito in un progetto o di un quadro in cui si salva il nucleo quadro nel vostro repo github o tirare in diretta attraverso un altro repo. Si dovrebbe essere affidamento su compositore per cose del genere.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top